Weblate 2026.11.2

Não lançado ainda.

Novas funcionalidades

  • Added DEFAULT_WORKSPACE_TM to configure default workspace translation memory usage and contribution for projects.

Melhorias

  • Invalidate pending e-mail additions when the account password changes.

  • Clarified e-mail addition, confirmation steps, and registration breadcrumbs in account settings.

Correções de segurança

  • Prevented merge and revert actions from copying read-only state, and kept votes on read-only strings from accepting suggestions automatically. Clarified suggestion autoaccept behavior for approved translations.

  • Prevented concurrent language creation from breaking Apple XLIFF and Stringsdict plural handling and repaired existing duplicate plural definitions.

  • Added TRANSLATION_MAX_SIZE to limit translation file size before parsing and limited each file to 100,000 content strings before synchronization or import.

  • Disabled Mercurial subrepositories, removed nested repository metadata from managed Mercurial checkouts and project backups, and enforced backend URL restrictions when validating backups.

  • Bounded font check measurement, replacement expansion, and preview rendering.

  • Cleared invalid GitHub App push settings and prevented installation credentials from being used for another host.

  • Enforced source-language permissions for bulk source metadata and source check dismissals, and terminology permissions across glossary flag edits and uploads.

  • Limited interactive machine-translation request frequency and concurrent requests per service installation.

  • Enforced team language selection when creating translations and required project authority for language workflow settings.

  • Restricted project-wide component locking to components the actor may manage.

  • Concealed invitation e-mail addresses and deleted restricted component names in public history.

  • Prevented account e-mail discovery through self-service API updates and public history or project filters.

  • Enforced add-on compatibility checks for project installations through the API.

  • Escaped rendered plain-text templates when displaying repository browser links in HTML.

  • Prevented bypassing confirmation and password-reset form checks through direct e-mail authentication completion requests.

  • Limited user activity searches to visible translation history.

  • Limited repository URLs in webhook deliveries to prevent excessive matching work.

  • Removed control characters from base-file edits before writing translation files.

  • Restricted propagated check dismissals to components where the user may dismiss the check.

  • Enforced REQUIRE_LOGIN for Git repository exports, including anonymous clones.

  • Limited text shown in translation history lists and added a full change view for long entries.

  • Rejected unsafe fork remote names from merge-request repository credentials before running Git commands.

  • Preserved previous IP login failures after a successful sign-in to prevent rate-limit bypasses.

Correções de erros

  • Limited repository add-on installation to repository-owning components and showed inherited add-ons on linked components.

  • Preserved concurrent approvals when saving through the API, accepting suggestions, merging translations, or reverting changes.

  • Rechecked billing status when creating components through the API or web wizard.

  • Prevented removal of translations from locked components, including project and category language removal.

  • Fixed the Matplotlib font rendering check to run without accessing the cache.

  • Required contributor agreement acceptance before creating a translation file.

Compatibilidade

  • Clarified the RESP3 datastore requirement introduced in Weblate 2026.11.1, including errors from incompatible Redis servers or proxies.

Atualização

  • Pending e-mail additions started before this upgrade retain their existing validity and expiry behavior.

Siga as Instruções genéricas de atualização para realizar a atualização.

Colaboradores

All changes in detail.

Weblate 2026.11.1

Released on November 5th 2026.

Novas funcionalidades

  • Added account security findings with CSV leaked-password validation, persistent reports, and bulk password resets or dismissal.

  • Added an upgrade check for legacy lookalike verified e-mail identities, with administrator cleanup in account security findings.

  • Added authenticated GET /api/activity/ for daily activity and recently active projects.

Melhorias

  • Improved user profiles and administration on large installations by loading team choices on demand and using search for large admin relations.

  • Reduced database queries when committing pending translations.

  • Improved performance of user profiles, contribution lists, and author-filtered changes on large installations.

  • Added XML file format parameters for UTF-8 byte order marks, declaration encoding case, and final newlines.

  • Clarified verification and account recovery guidance when adding an e-mail address in account settings.

  • Automation condition groups and branching actions can now be edited in the visual editor.

  • Removed per-event DNS lookups when reusing Fedora Messaging publisher connections.

Correções de segurança

  • Require acceptance of invitations from automatic team assignments to project and workspace teams, including rules restored from project backups.

  • Bound file-mask matching during component validation and repository updates to prevent crafted masks from exhausting workers.

  • Restrict font uploads to TrueType and OpenType content.

  • Require review permission to replace translation or Glossário files when reviews are enabled.

  • Prevented blocked project administrators from gaining workspace ownership when the last billed project is removed, and restricted new blocks and direct administrative grants that would combine those states.

  • Require recent credential verification for browser changes to access rights, user accounts, and project visibility; use a password or linked sign-in provider when two-factor authentication is absent. See Autenticação de dois fatores.

  • Prevented a removed invitation from granting access, including site-wide superuser status, when it was being accepted at the same time.

  • Prevented excessive CPU and memory use and failed saves in the Fluent checks caused by strings with many variants or deep nesting. Strings exceeding the limits now fail the check.

Correções de erros

Compatibilidade

Atualização

  • Upgrade incompatible Redis servers or proxies before upgrading Weblate. An unknown command HELLO error, including one reported as weblate.C024: Could not use Matplotlib, indicates this compatibility issue; see Configurar cache.

Siga as Instruções genéricas de atualização para realizar a atualização.

Colaboradores

Contribuições ao código

Michal Čihař, Kartik Ohri, Karen Konou, Benjamin Alan Jamie

Contribuições de tradução

Michal Čihař, Watchman89, Kaya Abe, Hyeonjeong Lee, Любомир Василев, Milo Ivir, Rumuz AGO, fserrador, Massimo Pissarello, Sup! 0_0, Fjuro, Frank Paul Silye, پرویز قادر, Eduard Ereza Martínez

Contribuições para a documentação

Michal Čihař, Kartik Ohri, Karen Konou, Benjamin Alan Jamie

All changes in detail.

Weblate 2026.11

Released on November 2nd 2026.

Novas funcionalidades

  • Built-in roles can be customized, with permission changes preserved across upgrades and a reset to upstream defaults.

  • Added optional self-hosted Anonymous bot protection as a technology preview, with proactive anonymous proof of work and verified crawler exemptions following the robots.txt crawl policy.

  • Added a Languages tab to Espaços de trabalho for translation and review across projects, a contextual menu for users with multiple workspaces, and watched multi-project workspaces in My workspaces.

  • Unified Edição em massa with search and replace, adding regular expressions and translation clearing in manual runs, Automations, and the add-on. Manual edits offer previews, with flags and labels grouped by scope and separate add and remove actions.

  • Added permissions for user discovery, profile access, and resource-scoped contributor identities, including editor attribution and identity-safe exports. See Confidential collaboration and Privacy configuration.

  • Added workspace translation propagation scopes for sharing translations across projects or components with matching names.

  • Added CDN manifests listing available languages and translation files with checksums and sizes.

  • Added an optional OpenID Connect identity provider for signing in to other applications with Weblate accounts.

  • Added eTranslation automatic suggestions with a default language domain and per-component domain mapping.

  • User settings can be imported from a user data export on the account page.

  • Added string selection for composing Automation actions with reusable result scopes.

  • Translation services support multiple installations at site, workspace, and project scope, with optional slugs, inherited-installation exclusions, and reversible pause controls. See Translation services.

  • Added personal and project Saved searches offered in the search filters.

  • Automations offer visual and YAML editors, documented change-event identifiers, and a separate execution form with previews and change context for real runs.

  • GitHub pull requests can be assigned to a configured user or the acting user’s linked GitHub account, and can have configured labels added using Version control parameters.

Melhorias

  • Translation services have detail pages with settings, controls, provider error logs, and rate limit status and reset controls. Cooldowns are per installation, support provider retry delays, and use service-specific defaults.

  • Kotlin SDK integration now offers Translation files CDN installation and Gradle configuration for original XML downloads.

  • Sped up project backup restoration by batching label, comment, and check restoration and reducing source-string linking and author lookup queries.

  • Fedora Messaging now publishes using Kombu, removing the Twisted dependency.

  • Sped up Git export URL updates for projects with categorized components.

  • Reduced database processing overhead for metadata-only updates during repository synchronization.

  • Sped up saving custom source language workflows by batching writes, limiting reconciliation to affected translations, reducing author lookups, and running expensive quality checks in background batches.

  • Screenshots recognize image text in the background and cache results, with separate image text suggestions and source string search tabs.

  • Project backup restoration validates stored parameters, reports skipped unsupported VCS and file format parameters, and corrects screenshot filename extensions using validated image contents.

  • Automatic translation reports translation service failures in task results, the API, and the user interface while preserving successful translations.

  • Improved project-wide inconsistent and reused translation checks by restricting database searches to eligible peer translations.

  • Reduced database queries during stale repository cleanup by cleanuptrans and scheduled maintenance.

  • Grouped related add-on settings and separated integration instructions, with setup guidance for webhooks, Slack, and Fedora Messaging.

  • Reduced database expression overhead when updating Memória de Tradução entry statuses.

  • PyPI releases include publish attestations recording package provenance.

  • Docker deployments can trust custom CA certificates for outgoing connections, including repository operations over HTTPS.

  • Docker deployments support signing in through Hosted Weblate or another Weblate installation using OpenID Connect.

  • Project administrators with Edit project settings can directly access and manage restricted components in their project; translation and download actions keep their separate permissions.

  • Sped up string searches by language code and related objects, avoiding unnecessary deduplication.

  • Component creation and discovery presets warn when resource limits might make discovery results incomplete.

  • Renamed provider configuration and selection to Translation services, while keeping the translation editor’s Automatic suggestions tab.

  • Translation history records change origins, distinguishing user interface, API, repository, system, and automation activity, including automation installation and execution identifiers.

  • Bounded JSON webhook response bodies and headers to limit worker memory use and activity-log growth.

  • Reorganized user profile settings into clearer tabs for public profile, security, and developer access.

  • Component creation loads remote branches only for the selected component, avoiding repository queries when opening the page.

  • Automation AI quality evaluation now uses the effective add-on’s service automatically, with an optional service assertion.

  • Require selecting an authenticator app at sign-in when multiple apps are registered, so unsuccessful checks affect only the selected app.

  • Added recovery of missing Git checkouts or .git directories, including local glossaries, through Reset and reapply translations recovery behavior, with clearer alert diagnostics and repository maintenance links.

  • Sped up disk-state snapshot writes during file reapply and cleanup during translation commits and repository resets.

  • SVG status badges now use a blurred text shadow to match the shields.io style, improving text contrast.

  • The translation editor remembers whether the string details in the translation context are expanded.

Correções de segurança

  • Prevented arbitrary file overwrite and remote code execution through authenticated project backup imports (GHSA-8jpg-5gm2-hjp6).

  • Bounded Edição em massa operations to 20,000 matching strings, processed browser edits in background batches, and added submission rate limiting.

  • Signed-out third-party sign-ins can link to an existing account by matching e-mail only when REGISTRATION_REBIND is enabled.

  • Prevented linked components in the REST API and component duplication from revealing repository settings or credentials without repository access.

  • Enforced REGISTRATION_EMAIL_MATCH and disposable e-mail restrictions when importing authentication-provider addresses and selecting public or commit e-mail addresses through the API.

  • Protected template downloads through the REST API against symlink races during concurrent repository updates.

  • Prevented account takeover through Unicode lookalike e-mail addresses in password reset and account linking. See Registo e perfil do utilizador.

  • Prevented Mercurial option values and Git revisions from being interpreted as command-line options, and rejected invalid revisions in project backup imports.

  • Require confirmation of an existing sign-in method before first two-factor enrollment and a separate second-factor check before creating a project token afterward.

  • Require recent two-factor verification for API key disclosure, credential and project token changes, member or token removal, and account deletion. Verification is bound to the signed-in account during third-party sign-in and sensitive actions.

  • Bounded screenshot image text matching to prevent excessive web worker CPU use on large components or dense images.

  • Enforced per-string edit permissions for automatic translation and review permissions for translation reverts and merges.

  • Prevented translation, Zen, project-language, and category-language pages, conflict history, single-project redirects, and component settings forms from disclosing restricted component details, linked repository settings, or private component slugs.

  • Bounded CPU use in interpolation, markup, Markdown link, AngularJS, unchanged translation, AsciiDoc, and Java MessageFormat checks, including Java format detection and highlighting. Hardened translation sanitization and service placeholder restoration against excessive non-breaking spaces and syntax tokens.

  • Bounded diff rendering and edit-distance calculations for large translations in translation history, CSV exports, and reports.

  • Applied the translation write rate limit to the Zen editor save endpoint.

  • Prevented the automatic translation add-on from exposing restricted source component IDs in change history.

  • Prevented reused and inconsistent translation checks from exposing restricted component strings or confirming matching translations across access boundaries.

  • Bounded search query parsing and regular expression analysis to prevent excessive CPU and memory use.

  • Restricted sensitive background task diagnostics to users allowed to view the repository location, retaining general progress and failure messages for members.

  • Prevented translation service credentials in request URLs from appearing in automatic suggestion errors.

  • Rejected invalid language codes from Aliases do idioma and automatically created languages.

  • Prevented unintended workspace ownership grants when removing components or translations, and revoked project team access when assigned components move to another project.

  • Excluded projects from component creation and management destinations for blocked users, including users with project administration permissions.

  • Restricted contributor IP addresses in change API responses to superusers.

  • Bounded component discovery preset detection work for repositories with many translation layouts.

  • Prevented spreadsheet formulas, including those hidden behind Unicode characters, in Histórico de tradução, API REST do Weblate, and Transferir traduções CSV files.

  • Prevented restricted glossary terms from leaking through other components or translation services, and private or restricted translations from leaking through the automatic suggestion cache.

  • Prevented aggregate translation archives from bypassing restricted-component and language-scoped download permissions.

  • Prevented restricted team administrators from granting access through teams covering projects where they are blocked or have not satisfied Autenticação de dois fatores requirements.

  • Require glossary editing permission when changing glossary flags through the string context form or Edição em massa.

  • Fixed role permission revocation through partial API updates.

Correções de erros

Compatibilidade

  • The default PRIVATE_COMMIT_EMAIL_TEMPLATE now uses user-{user_id}@users.noreply.{site_domain} instead of the username. This changes generated addresses for users following the private e-mail default; explicitly selected addresses are preserved. Set the template to {username}@users.noreply.{site_domain} to retain the previous behavior. See Privacy configuration.

  • Custom integrations must use Recording acting users instead of transient model acting_user attributes; redundant actor task arguments have been removed.

  • Removed the SAML identity provider integration and the saml2idp extra. Use the OpenID Connect identity provider for signing in to other applications with Weblate accounts. SAML sign-in to Weblate remains supported.

  • Fedora Messaging broker URLs no longer accept query strings or fragments; configure delivery timing using the add-on fields.

  • import_project, import_json, import_demo, add_suggestions, and install_addon now require --user USERNAME to attribute component and configuration changes to an existing account.

Atualização

Siga as Instruções genéricas de atualização para realizar a atualização.

  • Stop task producers and schedulers, drain queued work and deferred repository follow-ups, and upgrade the application and workers together.

  • Remove djangosaml2idp from INSTALLED_APPS and its configuration before upgrading if you used the removed SAML identity provider. See OpenID Connect identity provider for its replacement.

  • Update custom SOCIAL_AUTH_PIPELINE configurations in settings.py to match weblate/settings_example.py. The example configuration and Docker image already include these steps. See Autenticação.

    • Add weblate.accounts.pipeline.verify_first_factor_sso immediately after social_core.pipeline.social_auth.social_user to verify the existing sign-in method before first two-factor enrollment.

    • Replace social_core.pipeline.social_auth.associate_by_email with weblate.accounts.pipeline.associate_by_email to enforce REGISTRATION_REBIND for third-party sign-ins.

    • Add weblate.accounts.pipeline.verify_recent_second_factor immediately after weblate.accounts.pipeline.associate_by_email to enforce recent two-factor verification before linking a new sign-in identity.

  • If you customize CELERY_TASK_ROUTES, route weblate.trans.tasks.bulk_edit_task to the translate queue, following weblate/settings_example.py.

  • To enable optional Anonymous bot protection, add weblate.utils.bot_protection.BotProtectionMiddleware after django.contrib.sessions.middleware.SessionMiddleware and before Weblate’s authentication middleware, following the example configuration.

  • The upgrade repairs stored screenshot filename extensions. Screenshot storage must be accessible during migration; see Cópias de segurança de nível de projeto.

Colaboradores

Contribuições ao código

Michal Čihař, Neil Roberts, Keunes, nicommteam, Karen Konou, Benjamin Alan Jamie, 与世无争剑宇子, tahodev, Anish kunda, Kartik Ohri

Contribuições de tradução

Michal Čihař, Alexis Launay, Matthaiks, Peter Vančo, hoanghuy309, Dick Groskamp, Watchman89, Sup! 0_0, VfBFan, Aindriú Mac Giolla Eoin, QuietCedar47, Daniel Nylander, Arif Budiman, Yaron Shahrabani, Andrei Stepanov, CemileDener3127, Ldm Public, Fjuro, Любомир Василев, ahmetergvnc, Basheer Radman, Nicat, Eduard Ereza Martínez, Kristoffer Grundström, suyeon kim, Milo Ivir, Adam Havránek, Alyona Bolshova, Hasan, Adolfo Jayme Barrientos, justcontributor, TCP, Lee Vincent, Manuela Silva, Fúlvio Alves, Carmelo Serraino, Aniwene Madolomani, Priit Jõerüüt, jernejp21, Kaya Abe, คนแปล มังงะฝึกหัด, Phuc Nam Hoang, CongBao, Omer I.S., EkaterinePapava, soma Rashidi, Kristijan Tkalec, Joel A, پرویز قادر, Black Daniel, Erdem, Florent, Besnik Bleta, 김신애, HammadMengal, Rumuz AGO, reducedradius

Contribuições para a documentação

Michal Čihař, Keunes, nicommteam, Benjamin Alan Jamie, Karen Konou, 与世无争剑宇子, tahodev, Anish kunda, Kartik Ohri, Jah-yee

All changes in detail.

Weblate 2026.10.1

Released on October 9th 2026.

Novas funcionalidades

Melhorias

Correções de segurança

  • Prevented project backup imports from granting site-wide permissions through restored project teams (GHSA-pgmx-p3h7-7q8x).

  • Prevented Automation workflow configuration from disclosing references to restricted components in change history.

  • Marked access-controlled status widget responses as private to shared caches.

  • Disallowed filesystem paths and the file scheme for version control repository URLs.

  • Added restrictive cache controls to authenticated HTML responses to prevent previously viewed content from being restored after logout.

  • Hardened version control metadata filtering against trailing-dot and trailing-space path aliases.

  • Prevented sitemaps from disclosing restricted component and translation URLs.

  • Restricted stale Git lock cleanup to the repository running the failed command and prevented empty file lists from committing unrelated changes.

  • Enforced e-mail confirmation code expiry through Python Social Auth using AUTH_TOKEN_VALID, independently of scheduled cleanup.

Correções de erros

  • Fixed Filtro de chaves for JSON and other formats supporting both monolingual and bilingual use.

  • Fixed acting-user attribution and display for administrative account changes in audit logs.

  • Removed expired OpenID associations and OIDC login nonces during hourly authentication storage cleanup.

  • Fixed Cópias de segurança de nível de projeto restoration of translation file language aliases and duplicate team names, and improved validation error formatting.

  • Prevented concurrent creation of duplicate project team names and preserved custom teams when enabling features that require conflicting built-in team names.

  • Prevented duplicate initiation of provider authentication and improved recovery guidance for authentication failures and token errors.

  • Components using the GitHub App now follow renamed or transferred repositories; existing Apps need to subscribe to the Repository event, see URL do Webhook da Aplicação.

Compatibilidade

  • The file scheme is disabled for security reasons and can no longer be included in VCS_ALLOW_SCHEMES. Weblate now fails to start until it is removed from the setting and existing components are migrated to supported repository URLs.

Atualização

Authentication names and provider logos now come from python-social-auth. Add social_django.finders.SocialAuthIconFinder after the standard finders in STATICFILES_FINDERS in settings.py, then run weblate collectstatic --noinput. The example configuration and Docker image already include the finder. Existing authentication name and image settings remain supported. See Autenticação for details.

If you maintain a custom SOCIAL_AUTH_PIPELINE in settings.py, add social_core.pipeline.social_auth.social_names immediately after social_core.pipeline.social_auth.social_details. Name conversion now runs in this shared step, and Weblate no longer joins provider first and last names itself. Existing full names are preserved. The example configuration and Docker image already include the new step. See Autenticação for details.

Siga as Instruções genéricas de atualização para realizar a atualização.

Colaboradores

Contribuições ao código

Michal Čihař, Kartik Ohri, Karen Konou, Philipp R, michael-smt

Contribuições de tradução

Michal Čihař, VfBFan, Eduardo Addad de Oliveira, Basheer Radman, Любомир Василев, Watchman89, Matthaiks, Peter Vančo, Negonkey, Andrei Stepanov, Fjuro, justcontributor, reducedradius, Lee Vincent, Arif Budiman, Florent, Alexis Launay, Alagirisamy Rengaraj, Sup! 0_0, Milo Ivir, Adolfo Jayme Barrientos, Yaron Shahrabani, Kristoffer Grundström, Dick Groskamp, Ldm Public, hoanghuy309, Nicat, Nitin Jangra, Temuri Doghonadze, Horus68, Szafranek13, LaKato, Daniel Nylander, Massimo Pissarello, Aindriú Mac Giolla Eoin, Dan, Eduard Ereza Martínez

Contribuições para a documentação

Michal Čihař, Kartik Ohri, Philipp R, michael-smt

All changes in detail.

Weblate 2026.10

Released on October 1st 2026.

Novas funcionalidades

Melhorias

  • Component configuration errors are reported before fetching the repository when repository files are not needed for validation.

  • Clarified that site-wide team management can grant access to private projects independently of the team manager’s own project access.

  • Improved checks, automatic fixes, glossary matching, and machine translation for independent alternatives in multivalue formats.

  • Added a thumbnail picker to associate existing screenshots with a string from the translation editor.

  • Repository maintenance now checks permissions on the repository-owning component and explains where missing permissions are required.

  • Automatic translation using other components now prefers translations with matching source text and context.

  • Aligned string search filters with the status overview’s order and colors, and added an All strings option to clear the query.

  • Added monthly instance activity to the data sent with support integration for activity monitoring and discovery ranking.

  • Improved repository maintenance with disabled push controls when push configuration is missing and direct links to component VCS settings.

  • The automatic translation add-on can create approved strings, falling back to translated strings when reviews are disabled for the target language.

  • Added independent term alternatives and scoped metadata to TBX glossaries, including metadata-preserving TBX exports.

  • Whitespace characters are now rendered consistently in the source string display and the translation editor, and different kinds of whitespace are now distinguishable from each other.

  • Added a font-monospace flag to display a string in the translation editor using a monospace font, useful for aligning command-line or terminal output.

  • History View details and Revert actions are larger, more widely spaced, and show a hover and focus background.

  • The units API now links to a unit’s associated screenshots and supports listing, assigning, and removing them via GET /api/units/(int:id)/screenshots/.

  • Added a keyboard shortcut to approve a translation and save and continue.

  • Clarified translation quality filter explanations and effective per-language review settings, with links to workflow configuration.

  • Reworked the Automatic suggestions tab to use the same layout as suggestions, and it now shows the translation memory context of each match.

  • The xgettext and Meson extraction add-ons now bundle common XML translation rules and support project-local ITS directories for extracting mixed source formats into a shared POT.

  • Repository maintenance now links to the latest pull or merge request opened by Weblate.

  • The project Files menu now lists translation download formats from WEBLATE_EXPORTERS instead of a fixed subset.

  • LLM automatic suggestions now show the model and, for custom API endpoints, the host that produced them.

  • Automation actions can select strings from the triggering change or a previous action’s affected units. See Automation reference and cookbook.

  • Unified browsing and searching strings, aligned search filters with the status overview, and added direct editor access to language-specific lists and an All strings filter.

  • Improved translation history with faster browsing, date navigation, and clearer actions.

  • Improved screenshot assignment in the editor with a thumbnail picker, predictable ordering, and removal without reloading.

  • The editor now distinguishes whitespace in source and translation strings, supports the font-monospace flag, and accepts decimal font-spacing values.

  • Added a Markdown preview to comments, explanations, announcements, and project instructions.

  • Added a keyboard shortcut to approve a translation and continue.

  • Clarified translation quality filters and effective per-language review settings.

  • Improved translation memory lookup performance and added match context to automatic suggestions.

  • Reduced aggregation overhead for the inconsistent translations check on large projects.

  • Moved related quality check updates to background tasks to avoid slow saves when many strings share a source or translation.

  • Hiperligações de marcação quality check now detects untranslated link titles.

  • Automatic translation across components now prefers matching source text and context. The automatic translation add-on can create approved strings, or translated strings when reviews are disabled.

  • Improved checks, fixes, glossary matching, and machine translation for multivalue alternatives.

  • TBX glossaries now support independent term alternatives and scoped metadata, preserved on export.

  • The xgettext and Meson add-ons now support bundled XML rules and project-local ITS directories.

  • Added uploaded file language checking with an override in the upload form and API.

  • Translation file uploads through the API accept form field content without a filename.

  • Repository maintenance now checks permissions on the repository-owning component, links to VCS settings, and disables unavailable push controls.

  • SSH repository connections now try IPv4 and IPv6 addresses in a staggered sequence and report failed addresses and ports.

  • Add-on error diagnostics now link to the responsible add-on configuration.

  • Added monthly instance activity to support integration data.

  • Suggestions can be shown in the Modo zen and accepted, rejected, or voted on in place.

  • Added a separate repository browser URL for translation files.

  • Docker startup now reports invalid nginx-related environment values before attempting to start nginx.

  • Squash de commits git now supports squashing together per author and language.

  • The automatic translation API can run as a background task. See POST /api/translations/(string:project)/(string:component)/(string:language)/autotranslate/.

Correções de segurança

  • Prevented repository URLs from injecting executable Mercurial configuration (GHSA-7rqp-4x64-cwch).

  • Prevented Ficheiros de metadados da App Store from following symbolic links outside the component repository (GHSA-7q8w-w5h2-v3cq).

  • Project administrators can no longer see blocked users” account e-mail addresses without site-wide user management permission.

  • Removed repositories created from rejected component ZIP and document uploads.

  • Protected translation reverts against cross-site request forgery.

  • Prevented client-supplied forwarded IP headers from bypassing anonymous API rate limits.

  • Prevented whitespace-only username searches from listing users through GET /api/users/.

  • Prevented project access managers from assigning users to site-wide teams associated with the project.

  • Invalidated outstanding password reset links after password changes regardless of e-mail address casing.

  • Prevented concurrent requests from exceeding configured web action rate limits.

  • Limited XLIFF language declarations in uploads and the number and size of translation alternatives to prevent resource exhaustion.

  • Enforced language-scoped screenshot permissions and restricted component access in translation consistency and direct automatic translation workflows.

  • Prevented project API tokens from inheriting permissions through automatic team assignments.

  • Protected Git and Mercurial metadata consistently in repository paths and downloads, and excluded known foreign VCS metadata when importing component ZIP files.

  • Prevented notification subscriptions from exposing inaccessible project and component settings through the REST API and profile settings.

  • Rate-limited password-reset requests for unknown e-mail addresses.

Correções de erros

  • Project backups now tolerate missing or damaged repositories and preserve available files and translation data during restore.

  • Project MO archive downloads now skip incompatible file formats without failing the download.

  • Made eligible automatic-translation sources consistent across web, API, and Automation add-on configuration.

  • Fixed move_language and automatic language alias updates to preserve language-specific settings and permission limits, and detect conflicting translations or settings before moving content.

  • Suppressed OpenSSH post-quantum key exchange warnings that obscured errors from SSH repositories.

  • Fixed the BBCode markup check for parameterized, nested, and multiline tags.

  • Avoided commits for translation state and metadata changes that the file format cannot store, while preserving Filtro de qualidade de tradução behavior.

  • Fixed commit attribution for needs-editing changes caused by source edits.

  • Improved plain-text notification e-mails with readable links and tables instead of Markdown.

  • Project language archive downloads in the REST API now honor language-scoped download permissions consistently with the web interface.

  • Fixed authentication initialization with Configuração de amostra para iniciar Granian com ASGI when Sentry instrumentation is enabled.

  • Fixed status widgets for categories, category-language pages, and workspaces, and corrected statistics for nested categories and deleted Etiquetas de cadeia.

  • Fixed MIME nesting and reduced the size of inline branding images in notification e-mails.

  • Anthropic now preserves path prefixes in custom base URLs.

  • Fixed false positives in the consecutive duplicated words check for South Asian languages and prevented the punctuation spacing check from inserting spaces in URLs.

  • Fixed the maximum size check preview shifting text when font-spacing is set.

  • Fixed Docker startup warning checks when the warning directory is missing or inaccessible.

  • Fixed an upgrade failure when migrating dismissed component alerts from releases before 2026.8.

  • Fixed the search results refresh icon color in themes and on hover.

  • Fixed truncated grouped summaries in notification e-mails; the 100 entries limit now applies only to listings of individual changes.

  • Fixed bilingual glossary terms appearing as untranslatable when translating in their source language.

  • Fixed component discovery with inherited licenses and other inherited settings.

  • Backups containing legacy component formats (e.g plainxliff, csv-utf-8) are now correctly restored.

  • Fixed switching between singular and plural forms when adding new strings.

Compatibilidade

  • An explicit source-wide read-only flag now takes precedence over translation flags. Remove it from the source to allow editing.

  • Existing project API tokens lose permissions inherited from non-project teams. Assign required permissions through project-specific teams.

  • API throttles now use API_RATELIMIT_ANON and API_RATELIMIT_USER instead of REST_FRAMEWORK["DEFAULT_THROTTLE_RATES"].

  • API authentication now rejects unsupported authentication schemes, such as Basic, with HTTP 401, including when a valid browser session is present.

  • Notification subscription API responses now expose project and component as nullable URL strings instead of nested objects.

  • The former plainxliff and xliff2-placeables file formats are migrated to XLIFF 1.1 e 1.2 / XLIFF 2.0 with the xliff_placeables Parâmetros de formato de ficheiro.

  • Norwegian Bokmål now uses nb as its built-in language code while preserving nb_NO support, see Definições de idioma.

Atualização

  • Add weblate.automation to custom INSTALLED_APPS before migrating. If WEBLATE_ADDONS explicitly lists the automation add-on, change its import path to weblate.automation.addon.AutomationAddon. The official Docker image includes the new app.

  • Existing contributor comments add-ons migrate to component file format parameters. Remove the obsolete add-on from custom WEBLATE_ADDONS and DEFAULT_ADDONS settings; new components no longer inherit it.

  • Add weblate.api and weblate.kotlin_sdk to INSTALLED_APPS before migrating. The official Docker image includes both. Installing the Kotlin app does not enable CDN publication on any component.

  • In non-Docker settings, move the anon_throttle and user_throttle arguments from get_drf_settings and any custom REST_FRAMEWORK["DEFAULT_THROTTLE_RATES"] values to API_RATELIMIT_ANON and API_RATELIMIT_USER. Existing Docker rate-limit variables still work.

Siga as Instruções genéricas de atualização para realizar a atualização.

Colaboradores

Contribuições ao código

Michal Čihař, Karen Konou, michael-smt, Mark Davies, Diptajoy Mistry, krisna, Metin Kılagöz, MIHAIL N., Claude Sonnet 5, mmustafasenoglu, i4i, Mustafa Senoglu, anishkun, Anish kunda, Gersona, Magnus Karlsson, JUSHUANGHUI LI, Chimwemwe Siyingwa, krisnaparahita, Dr Alex Mitre, Aditi Tarate, Kartik Ohri, Suleyman Arif Uzun

Contribuições de tradução

hoanghuy309, Watchman89, Adam Havránek, Fjuro, justcontributor, Szafranek13, Tony Ng, Chloe Wang, VfBFan, Valentin Ljuba, Daniel Nylander, Andrei Stepanov, Michal Čihař, Matthaiks, Arif Budiman, Любомир Василев, Aindriú Mac Giolla Eoin, Yaron Shahrabani, Adolfo Jayme Barrientos, Sup! 0_0, Lee Vincent, Milo Ivir, Dick Groskamp, Eduard Ereza Martínez, Ricky Tigg, Mickaël Binos, reducedradius, Artyom Rybakov, Kyotaro Iijima, Jim Kats, Supaplex, Peter Vančo, Stysusss, Ulrik, Ldm Public, Júlia Rosell Saldaña, Deleted User, eulalio, Zahid Rizky Fakhri, Takeru Mikenu, 이정희, António Oliveira, xXx, தமிழ்நேரம், Kaya Zeren, Bone NI, QuietCedar47, Andi Chandler, Ettore Atalan, Massimo Pissarello, Besnik Bleta, Chimwemwe Siyingwa, Nicat, Sketch6580, Areera

Contribuições para a documentação

Michal Čihař, Karen Konou, michael-smt, Diptajoy Mistry, Maciej Olko, MIHAIL N., Claude Sonnet 5, mmustafasenoglu, i4i, Mustafa Senoglu, anishkun, Anish kunda, Gersona, Magnus Karlsson, JUSHUANGHUI LI, Chimwemwe Siyingwa, krisnaparahita, krisna, Claude Opus 5.5, spatterlight, Dr Alex Mitre, Aditi Tarate, Kartik Ohri, Suleyman Arif Uzun

All changes in detail.

Weblate 2026.9.1

Released on September 8th 2026.

Novas funcionalidades

  • Added per-user notification diagnostics for users and administrators, with compact explanations of matching subscriptions for object paths.

Melhorias

  • Added explicit search result refresh in the translation editors and improved recovery when saved search results expire.

  • Docker development tests now automatically prepare an isolated test environment without requiring application startup or the Dev Container CLI.

  • Added a development container for tests and lint, with an optional application QA profile, isolated storage per Git worktree, dynamically allocated localhost application and mailbox ports, and Chromium diagnostics and mandatory browser test commands.

  • Improved translation statistics calculation performance and avoided redundant parent updates when loading check and label details.

  • Added posting and displaying scoped announcements on category-language pages.

  • Added a dismissible diagnostic for glossaries with disabled string management when they use a local repository or contain terminology.

  • Clarified incident reporting, reporting deadlines, and security notifications for hosted and self-hosted users.

  • The Manage reports permission now consistently grants access to complete translation reports for the selected scope, including private projects and restricted components below it.

  • Docker deployments now use a combined Celery worker by default, reducing memory usage while increasing task throughput. Use CELERY_WORKER_MODE to select the combined, split, or single worker setup.

  • Improved Billing detail page loading performance by batching related project, invoice, and audit log queries.

  • Further reduced Celery worker memory usage by sharing preloaded URL configuration between worker processes and loading bitmap widget rendering dependencies only when needed.

  • Docker startup configuration warnings are now available as deployment checks, including in horizontally scaled deployments.

  • Reduced peak memory use and task duration for notification digests by processing recipients in bounded batches and limiting each summary to 100 entries.

Correções de segurança

  • Prevented repeated authenticator app registration from creating duplicate devices and allowing reuse of one-time codes. Existing equivalent duplicate devices are merged while preserving consumed codes.

  • Borg backup passphrases are now recursively scrubbed from Sentry error reports, including when a custom event scrubber is configured.

  • Font overrides are now restricted to fonts uploaded to the same project.

  • Engage pages and status widgets no longer disclose Private or Custom projects unless Public sharing is enabled.

  • Prevented excessive CPU consumption while checking malformed Markdown and MDX syntax.

Correções de erros

  • Fixed the approved-only commit policy blocking commits for languages with reviews disabled by workflow settings.

  • Fixed the uWSGI configuration example to use the virtual environment’s Python when launching helpers for SSH repository operations.

  • Fixed language context and links in change history for scoped announcements and other language-specific events.

  • Restored DeepL API v1 translation support while retaining modern API language discovery and glossary improvements.

  • REST API unit updates now enforce the same translation text length limit as the web editor.

  • HTML void elements in Ficheiros MDX translations are now kept self-closing after sanitization, preventing invalid MDX output.

  • The autotranslate API endpoint now correctly describes its accepted request body fields (q, mode, auto_source, component, engines, threshold) in the OpenAPI schema instead of incorrectly reflecting the Translation resource.

  • Links outside tab navigation now correctly activate their target tabs, fixing upload links for missing translations and new components.

  • Error reporting integrations now distinguish informational messages from exceptions and reliably report the explicitly handled exception.

  • The default Celery per-child memory limit now accommodates the application’s baseline memory usage, avoiding unnecessary worker recycling.

  • Backup services now start only after settings and database backup files are fully updated, while backups to different Borg repositories can run in parallel.

Compatibilidade

  • Anonymous access to engage pages and status widgets is now disabled by default for Private and Custom projects. Enable Public sharing to preserve existing shared links after upgrading. Public and Protected projects are unchanged.

Atualização

Siga as Instruções genéricas de atualização para realizar a atualização.

  • Authenticator app registrations started before this upgrade must be restarted. Sessions referencing a removed duplicate device may require two-factor verification again.

  • Docker deployments now default to the combined Celery worker mode. If your deployment relies on separate workers for each queue or configures them using CELERY_MAIN_OPTIONS, CELERY_NOTIFY_OPTIONS, CELERY_MEMORY_OPTIONS, CELERY_TRANSLATE_OPTIONS, or CELERY_BACKUP_OPTIONS, set CELERY_WORKER_MODE=split to preserve the previous behavior.

  • The Docker CELERY_SINGLE_PROCESS environment variable is deprecated. Use CELERY_WORKER_MODE=single instead; the compatibility alias logs a startup warning.

Colaboradores

Contribuições ao código

Michal Čihař, Karen Konou, Shweta Singh, michael-smt

Contribuições de tradução

ℂ𝕠𝕠𝕠𝕝 (𝕘𝕚𝕥𝕙𝕦𝕓.𝕔𝕠𝕞/ℂ𝕠𝕠𝕠𝕝), Ldm Public, hoanghuy309, Vaclovas Intas (Vac31.), Matthaiks, Adam Havránek, VfBFan, reducedradius, Bone NI, Yaron Shahrabani, Любомир Василев, Fjuro, Andrei Stepanov, Arif Budiman, Watchman89

Contribuições para a documentação

Michal Čihař, Shweta Singh, michael-smt

All changes in detail.

Weblate 2026.9

Released on September 3rd 2026.

Novas funcionalidades

  • Repository maintenance actions now run as background tasks, avoiding request and proxy timeouts. Project-wide maintenance remains available for authorized repositories and lists components skipped because of linked-component permissions. The repository API supports the same behavior using background: true.

  • Descoberta de componentes can optionally create components from a monolingual base or new base file when no translation files exist yet.

  • Added Version control parameters to configure repository behavior per component, including force pushing, opting out of pull requests, and GitHub pull request automerge.

  • Added Migrating existing components for migrating existing Git and GitHub components to the Weblate GitHub App integration.

  • Added a Visible columns in lists preference to choose which statistics columns are shown in project, component, and language lists. See Preferências.

Melhorias

  • AWS SES can now be used as the outbound e-mail transport in Docker deployments by setting WEBLATE_EMAIL_BACKEND to django_ses.SESBackend. Region, endpoint, and SES v2 API opt-in are configurable via WEBLATE_AWS_SES_REGION_NAME, WEBLATE_AWS_SES_REGION_ENDPOINT, and WEBLATE_USE_SES_V2.

  • Removing the final Weblate workspace connection for a GitHub account, or removing the workspace holding it, now also uninstalls the Weblate GitHub App from GitHub.

  • Atualizar ficheiro POT (xgettext) now accepts multiple custom keywords (newline-separated) passed to xgettext via --keyword, enabling extraction from different function names.

  • Screenshot images are now cached in browsers to reduce repeated downloads.

  • Administrators can now find removed accounts by their former e-mail address in the audit log until AUDITLOG_EXPIRY. See Conformidade com as regulações de privacidade.

  • Deployment diagnostics now detect slow filesystem metadata access in data and cache directories, and validate VCS command versions during configuration health checks instead of every process startup. See Relatório de desempenho and VCS_BACKENDS.

  • Impacto de papéis da instância inteira clarificado que contêm permissões do site inteiro, incluindo gestão de utilizadores no site inteiro.

  • Desempenho de carregamento de ficheiro de tradução melhorado para alterações apenas de metadados de cadeias de carateres.

  • Reduced Celery worker startup memory usage by avoiding duplicate Django system checks and loading font rendering only when needed.

  • Billing audit logs now identify users who change plans, initiate payments, or merge billings.

  • Assigning languages to a team now uses an All languages toggle which disables the language choice when turned on, and a manually chosen set of languages is kept when toggling it. See Gerir controlo de acesso por projeto.

  • Management notices now distinguish support package activation, status refresh, unlinking, and Discover Weblate registration.

  • Clarified generic notification hook matching and privacy behavior.

  • Clarified that Weblate does not populate Git submodules. See Git submodules.

  • The initial Procurar e substituir action is now labeled Review changes to distinguish it from confirmation.

  • The translation flags editor now supports reopening flags for editing, arrow-key navigation, and copying with Ctrl+C. It also keeps commas inside quoted values intact, allowing flags such as regex:"^.{1,32}$" to be typed and pasted.

  • Repository failure alerts now provide guidance matching repository URL validation errors. See Troubleshooting repository URLs.

Correções de segurança

  • Component discovery now limits repository paths and file-mask comparisons to prevent excessive resource consumption from specially crafted repositories.

  • Rejected two-factor authentication attempts now apply AUTH_LOCK_ATTEMPTS, invalidate pending password sign-ins on lock or password change, and accept six-digit TOTP codes with leading zeroes.

  • Project backup restores now preserve all project, category, and component settings. They also allowlist repository metadata for Git, git-svn, and Mercurial to prevent archives from supplying executable configuration or repository indirection.

  • Project administrators can no longer remove API tokens belonging to other projects.

  • User listings and site-wide searches no longer expose project-scoped API tokens to users without global user viewing or editing permission.

  • Project and workspace translation memory now respects restricted component access, and restricted components no longer contribute to shared translation memory.

  • A correspondência de alvo do webhook já não recorrem à alternativa de correspondência de anfitrião/caminho. URLs de repositório de componente devem corresponder a um URL de repositório a partir da carga do webhook. Veja Alvos de webhook correspondentes.

Correções de erros

  • LLM-based machine translation services now report invalid provider responses more clearly, custom OpenAI and Mistral models no longer require a model-listing endpoint, and OpenAI automatic selection supports API keys restricted to older GPT models.

  • Daily metric collection now uses independent tasks and more efficient database queries to reduce peak memory usage and avoid losing all scopes when one collection fails.

  • Database dump failures are now shown in the backups management interface.

  • GitLab merge request forks now disable Git LFS to avoid missing-object push failures. See Git LFS.

  • Notification e-mails now wrap long strings instead of overflowing, keeping the View button reachable without horizontal scrolling.

  • Creating additional components for a repository imported through the GitHub App no longer fails without showing any error, and component creation errors which previously could go unreported are now always displayed.

Compatibilidade

Atualização

Siga as Instruções genéricas de atualização para realizar a atualização.

  • Docker deployments need to configure trusted proxy addresses. Set WEBLATE_TRUSTED_PROXY_ADDRESSES to preserve client IP addresses in nginx logs and Weblate when WEBLATE_IP_PROXY_HEADER=HTTP_X_FORWARDED_FOR is used; otherwise, the immediate TCP peer is used.

Colaboradores

Contribuições ao código

Michal Čihař, Karen Konou, Gersona, Spyder, mmustafasenoglu, Kartik Ohri, Shweta Singh, Fabian Berg

Contribuições de tradução

Yuri Chornoivan, Matthaiks, Steve, hoanghuy309, VfBFan, António Oliveira, Andrei Stepanov, Adam Havránek, Dick Groskamp, Aindriú Mac Giolla Eoin, Andi Chandler, Lee Vincent, Michal Čihař, Milo Ivir, Ldm Public, Peter Vančo, Alos (bop2039), Tarás Lavrentiev, Lito Parra, goeran, Любомир Василев, Vik, Bone NI, Pierfrancesco Passerini, CYAXXX, Yaron Shahrabani, Pavel Borecki, حسين نور الإسلام, amano, reducedradius, Fjuro, Frostre_, Sup! 0_0, Ulrik, xiezhihai, Yoshi, Alexander Gabilondo, Eduard Ereza Martínez, Watchman89, Kyotaro Iijima, AlexYang, justcontributor, Background update, Arif Budiman, Harsha Kanaparthi, notlin4, KuroisKitsune, Zahid Rizky Fakhri, Michal Várady, Massimo Pissarello, HThuren, SeyhaLite, David Wagener, Yauhen, Anucha Hlownonkor, michael0820, Artyom Rybakov, Nhật Nhật, 子悦解说, Mahdi B. Jahani, ℂ𝕠𝕠𝕠𝕝 (𝕘𝕚𝕥𝕙𝕦𝕓.𝕔𝕠𝕞/ℂ𝕠𝕠𝕠𝕝)

Contribuições para a documentação

Michal Čihař, Gersona, Karen Konou, Spyder, mmustafasenoglu, Kartik Ohri, Shweta Singh

Todas as alterações em detalhes.

Weblate 2026.8.1

Atualizado em 7 de agosto de 2026.

Novas funcionalidades

  • APIs de projeto e componente agora expõem todas as definições de utilizador configuráveis, incluindo definições de controlo de acesso e memória de tradução. Veja API REST do Weblate.

  • Comando metrics adicionado para buscar métricas do servidor localmente nos formatos JSON, CSV, ou OpenMetrics.

Correções de erros

  • O progresso de tarefa agora requer autenticação e funciona para operações de tradução agregadas automáticas.

  • Registos de trabalhador do Docker Celery já não emitem registos duplicados através gestores de registo Celery e Weblate.

  • A criação de componente através da REST API agora devolve o URL de tarefa de plano de fundo na resposta quando criação de trabalho está na fila.

  • Serviços de tradução automática de modelo de linguagem de grande dimensão já não falham quando as definições de personagem e estilo não estão na configuração armazenada, tal como acontece quando o serviço está instalado através da REST API.

  • import_json agora preserva o idioma fonte do componente para componente novos importados a partir de exportações JSON.

  • Ações de repositório agora exigem permissão em cada componente que partilha o repositório afetado, incluindo componentes com link em outros projetos.

  • Confirmação de documento legal agora explicitamente cobre a política de privacidade. Veja Módulo legal.

  • Histórico de alterações de extra agora retém apenas valores de configuração explicitamente públicos e marca campos de credenciais alterados como ocultados.

  • Relatórios de trabalho de tradutor com métricas agora podem ser mostrados e descarregados enquanto HTML.

  • Credenciais de repositório agora são consistentemente escondidas dos resultados web e API.

Atualização

Siga as Instruções genéricas de atualização para realizar a atualização.

Colaboradores

Contribuições ao código

Michal Čihař, i4i, Alafi, Kartik Ohri

Contribuições de tradução

Yuri Chornoivan, hoanghuy309, goeran, peterxy, Ldm Public, António Oliveira, CYAXXX, Aindriú Mac Giolla Eoin, Valeria Sofia Azañero, DocNoc, Libre, MrLeaves, Matt P, Yaron Shahrabani, VfBFan, Lee Vincent, Michal Čihař, Andrei Stepanov, cat, Любомир Василев, Artyom Rybakov, Matthaiks, reducedradius, Peter Vančo, Steve, Anmoll Gupta, justcontributor, Besnik Bleta

Contribuições para a documentação

Michal Čihař, i4i, Kartik Ohri

Todas as alterações em detalhes.

Weblate 2026.8

Atualizado em 3 de agosto de 2026.

Novas funcionalidades

  • Preferência Mostrar todas as colunas em listagens usando deslize horizontal adicionada para manter todas as colunas listadas visíveis em ecrãs estreitos em vez de os esconder.

  • Espaços de trabalho agora fornecem uma lista Os meus espaços de trabalho filtrada por permissões, descarregamento de arquivos, procurar e substituir, orientações para envios, gestão de memória de tradução de espaço de trabalho, e eliminação de espaços de trabalho vazios não associados com faturação.

  • Métricas de tradução ao nível do projeto adicionadas nos formatos JSON, CSV, e OpenMetrics.

  • Suporte de implementação Configuração de amostra para iniciar Granian com ASGI opcional adicionado, incluindo WEBLATE_ASGI para contentores Docker e editor de tradução automática assíncrona, conexão GitHub APP, pedidos de atualização de repositório.

  • Vistas de Diagnósticos de espaço de trabalho e projeto agrupados adicionados com filtros de estado, gravidade, categoria, e permissões de ação por utilizador. Diagnósticos de componentes agora rastreia rescisão de propriedade, reabertura após mudanças relevantes, e notificar colaboradores de projeto que pode atuar em avisos e erros.

  • Endpoints da API adicionados para listar, adicionar, aceitar, rejeitar, e votar em sugestões de traduções.

  • Relatórios de tradução agora são geradas no plano de fundo, armazenadas para descarregamento mais tarde, disponíveis no âmbito do espaço de trabalho, e incluem análise de trabalho de tradutor.

  • Opção Utilizar palavras chave exclusivamente adicionada a Atualizar ficheiro POT (xgettext), permitindo que projetos desativem palavras chave predefinição xgettext e depender apenas em uma palavra chave personalizada.

  • Suporte de API adicionado para ler e atualizar as preferências Perfil do utilizador. Veja o endpoint Utilizadores.

  • Verificações de qualidade Número máximo de linhas e Marcação AsciiDoc adicionadas para limitar o número de linhas de traduções e validar as cadeias de carateres AsciiDoc.

  • Limitar idiomas de tradução adicionado, incluindo controlo por idioma para limitar edição de tradução direta para utilizadores privilegiados.

  • Suporte adicionado para ficheiros de legado Qt Linguist TS versão 1. Veja Qt Linguist - .ts.

  • O Weblate agora está disponível no idioma Laosiano.

Melhorias

  • Os bloqueios de limitação de taxa de ações na Web autenticadas são agora registados no Atividade no âmbito afetado e caminho de pedido.

  • As respostas da API da OpenMetrics agora incluem metadados e tipo de conteúdo com versão.

  • Gestão de extras agora utiliza configuração, registos e separadores de componentes separados, enquanto que registos de atividade distinguem execuções pendentes, bem sucedidas, falhadas e ignoradas e explicam execuções ignoradas.

  • Documentação Eventos de alteração selecionados expandida com semânticas de evento detalhadas e precisão de esquema da OpenAPI melhorada.

  • Desempenho de carregamento melhorado para vistas de matriz de múltiplos idiomas, painel de listas de componentes, históricos de categorias, e listagens de componente partilhado.

  • Gestão de memória de tradução agora carrega resumos de origem de forma mais eficiente, mostra contagens de entradas ativas, e pendentes e reporta o número de entradas processadas durante importação.

  • Recursos estáticos agora utilizam nomes de ficheiros com o conteúdo hashed, e CAPTCHA JavaScript é carregado apenas quando preciso.

  • Tradução automática Amazon Translate agora suporta configuração de formalidade, brevidade, e mascarar de profanidades.

  • Fiabilidade de OCR de Capturas de ecrã e contexto visual melhorada e comunicação de erros ao descarregar dados de reconhecimento.

  • Alertas de falha de repositório agora dão link diretamente para definições de versão de controlo de componente para utilizadores que os podem editar, mantenha os erros em inglês, e traduza diagnósticos que permitem tomar medidas para cada utilizador, incluindo restrições de pull request do GitHub.

  • Trabalhadores Celery agora pré-buscam menos tarefas por predefinição para definir utilização de memória e melhorar distribuição de tarefas.

  • Melhorada a recomendação de configuração Configuração de amostra para iniciar Granian e resiliência de trabalhador do contentor Docker para a carga de trabalho do Weblate WSGI.

  • Verificações de implementação agora detetam estatísticas de relação PostgreSQL corrompidas.

  • Diagnósticos de comunidade agora mostra cobertura de capturas de ecrãs de cadeias de carateres fonte, tópicos de instrução de tradução chave recomendados, e distinguir automações de entrada e saída do repositório.

  • Links fornecidos por um utilizador, tais como os que se encontram em comentários, comunicados, e perfis, agora são sublinhados e utiliza uma cor de contraste mais alta.

Correções de erros

  • Desativar autenticação de palavra passe a partir da gestão de utilizador do site inteiro agora regenera a chave API pessoal do utilizador por predefinição.

  • Estatísticas de categoria, projeto e comentário agora mantêm-se consistentes após topologia de componente e alterações de comentário, e métricas de categoria são recolhidos corretamente.

  • Nomes de ficheiro de repositório Mercurial que começam com um traço agora são tratados de forma segura.

  • URLs que contêm barras invertidas agora são rejeitados como inválidos.

  • Conexões de saída HTTP e Git protegidas agora vinculam-se a endereços públicos validados; operações Git protegidas falham de forma fechada quando clientes não podem aplicar essa vinculação (GHSA-45m9-pf98-8jmq).

  • Redirecionamentos HTTP Git permanentes para o mesmo anfitrião agora são validados e armazenados enquanto URLs canónicos de repositório de componente.

  • Mudanças de email REST API self-service agora são restritas a endereços verificados (GHSA-x84p-6892-473c).

  • Autorização da REST API agora protege consistentemente contas internas, componentes restritos, configuração de extras, partilha de componentes, links de repositório, e estados de revisão.

  • Importações de cópias de segurança agora validam dados restaurados antes de criar o estado do projeto, ignora componentes com links do repositório o importador não pode aceder ao componente alvo, e já não carregam configuração de arquivo Mercurial fornecida ou indireção de repositório partilhada (GHSA-f66g-8pcg-jm8r, GHSA-327h-qqgm-qv55).

  • Reconstrução de memória de tradução de projeto já não remove entradas importadas a partir de ficheiros.

  • Submissão e rejeição de sugestão agora rejeitam textos de sugestão excessivamente compridos e razões de rejeição.

  • Componentes restritos agora estão disponíveis no Hosted Weblate quando o plano de faturação permite projetos privados.

  • Procuras AJAX de tradução automática e memória de tradução já não anunciam se existem IDs de unidades inacessíveis ou não.

  • Feeds RSS já não anunciam histórico de mudanças de projetos inacessíveis ou de componentes restritos (GHSA-vvc6-wvqm-w5gc).

  • Webhooks de GitHub App de legado autenticados podem ativar novamente atualizações de repositório através do endpoint do webhook genérico do GitHub.

Compatibilidade

  • django-compressor já não é usado, e as definições COMPRESS_* foram removidas.

  • Estilização de documento legal agora é fornecido através de um modelo que pode ser sobrescrito em vez da folha de estilo global do Weblate. Veja Personalizar documentos legais e estilos.

  • Quando VCS_RESTRICT_PRIVATE está ativo, anfitriões de repositório Mercurial e Subversão têm que ser explicitamente incluídos em VCS_ALLOW_HOSTS; Git através de HTTPS e SSH exige o afixar de endereços de conexão sem uma entra de lista de permissões.

  • Configuração de proxy de HTTP de saída é limitado às variáveis de ambiente por protocolo documentadas em Proxy HTTP.

  • O Git SSH valida destinos HostName e Port configurados antes de conectar; configuração de administrador SSH continua confiada, e SSH_EXTRA_ARGS pode sobrescrever roteamento de conexão e afixar de endereço.

  • Transferências de objetos LFS Git não são suportadas e desativadas para repositórios geridos pelo Weblate; ficheiros rastreados através de LFS continuam a ser ficheiros ponteiro.

  • Os endpoints REST API credits e os seus campos de resposta credits_url foram substituídos por endpoints com âmbito reports e reports_url. Gerar de relatório de créditos agora é assíncrono; clientes precisam de submeter um relatório de credits, seguir o URL de tarefa devolvido, e buscar o relatório completo. Veja POST /api/reports/.

  • O campo languages de nível superior em respostas REST API foi removido; em vez disso, utilize profile.languages. Veja Perfil do utilizador.

Atualização

Siga as Instruções genéricas de atualização para realizar a atualização.

  • Há várias alterações em settings_example.py, sendo a mais notável a nova configuração STORAGES e a eliminação das configurações COMPRESS_*; por favor ajuste as suas definições de acordo.

  • Executar weblate compress já não é necessário; weblate collectstatic --noinput agora prepara recursos estáticos com versão sem limpar o armazenamento estático.

  • NumPy is now a required dependency; review the updated hardware requirements before upgrading.

Colaboradores

Contribuições ao código

Michal Čihař, Karen Konou, Nikunj Tyagi, Weblate CI, Shweta Singh, Gersona, Giacomo La Serra, Kartik Ohri, mmustafasenoglu, Mustafa Senoğlu, «Emmanuelle Bonnemay», Nicolas Lepage, «Guillaume Lagorce», «Jérémie Jadé», «Matthias le Coach», Любомир Василев, Spyder

Contribuições de tradução

António Oliveira, hoanghuy309, reducedradius, Michal Čihař, Andrei Stepanov, 為什麼不加空格, BoneNI, Любомир Василев, Adam Havránek, Libre, Horus68, Peter Vančo, Aindriú Mac Giolla Eoin, Matthaiks, VfBFan, Ldm Public, Mickaël Binos, Lee Vincent, Dick Groskamp, Rafael Fontenelle, Justin Parrot, Valeria Sofia Azañero, Priit Jõerüüt, Frank Paul Silye, goeran, Abduqadir Abliz, Arif Budiman, ℂ𝕠𝕠𝕠𝕝 (𝕘𝕚𝕥𝕙𝕦𝕓.𝕔𝕠𝕞/ℂ𝕠𝕠𝕠𝕝), Aniwene Madolomani, Pierfrancesco Passerini, Andi Chandler, Thunderstrike116, Giacomo La Serra, Ulrik, Cyborus, PPNplus, justcontributor, AlexYang, Kyotaro Iijima, Rajkumar Ramadoss, Yuri Chornoivan, DocNoc, Anucha Hlownonkor, Milo Ivir, Alexander Gabilondo, mbutsk, Oğuz Ersen, nautilusx, Yago Raña Gayoso, Blueberry, Yoshihoko, suyeon kim, Azharul Haque, win7guru, Matt P, Miguel A. Bouzada

Contribuições para a documentação

Michal Čihař, Nikunj Tyagi, Shweta Singh, Gersona, Giacomo La Serra, Weblate CI, Kartik Ohri, Karen Konou, mmustafasenoglu, Mustafa Senoğlu, Robert Wolff

Todas as alterações em detalhe.

Weblate 2026.7.1

Lançado em 10 de julho de 2026.

Novas funcionalidades

Melhorias

  • Componentes restritos agora mostram um ícone de estado na listagem de componentes.

  • Verificações de permissão agora reutilizam os dados concretizados relativos à composição da equipa de pesquisas leves de relações.

  • Documentado que ficheiros de idioma intermediários estão escondidos de listagem de idioma e podem tornar cadeias de carateres alvo apenas para leitura.

  • Diagnósticos de componentes agora avisam quando ficheiros PO GNU gettext PO (Objeto Portátil) estão configurados como ficheiros PO monolingues.

  • Pesquisas aproximadas na memória de tradução agora são mais rápidas para traduções de memórias grandes.

  • Mensagens de permissão negadas ao guardar traduções, editar glossários, ou votar em sugestões agora mostram razões mais específicas.

  • Notificações de comentário para cadeias de carateres que traduziu agora incluem cadeias de carateres que comentou previamente ou para as quais sugeriu traduções.

  • Comentários e sugestões agora observam automaticamente o projeto quando Obervar projetos automaticamente ao contribuir está ativo.

  • Acesso ao repositório Hosted Weblate clarificado no guião de acesso em Integrações de hospedagem de código.

  • A pesquisar cadeias agora inclui filtros para comentários pelo utilizador atual e separa procuras de comentários de cadeias de carateres fonte.

  • Páginas de conta de alojamento de código agora utiliza Conexões de alojamento de código consistentemente e fornecem texto da conta conectada independente do fornecedor.

  • O registo Descobrir Weblate agora pode ser começado a partir da interface de gestão sem copiar manualmente o código de ativação.

  • O Descobrir Weblate agora pode ser gerido a partir de um painel de gestão dedicado, o registo começa com a descoberta ativa, e projetos protegidos estão incluídos nesta listagem.

  • Atualizada a lista de modelos OpenAI, Mistral, e Anthropic para modelos atualmente suportados.

Correções de erros

  • Tradução filtrada e navegação zen agora reusam uma lista de resultados de sessão estável, mantendo posições e contagens estáveis após cadeias de carateres traduzidas saírem do filtro.

  • Ícones de prioridade de componentes já não são mostrados em listagens de tradução.

  • Espaçamento da pontuação já não marca marcas de imagem Markdown tais como pontuação Francesa e agora mostra quais marcas de pontuação ativam a verificação.

  • Fedora Messaging recebeu vários arranjos de fiabilidade.

  • O painel Coisas a verificar já não usam realce de erro para sugestões e outros estados de tradução que não são erros.

  • A personalização de fluxo de trabalho de tradução agora torna mais claro quando o fluxo e tradução por idioma estão desativados até que personalização esteja ativada.

  • Caches de permissão de utilizador anónimo agora estão isoladas entre pedidos.

  • A configuração da Aplicação GitHub agora explica que um espaço de trabalho é necessário em vez de mostrar um erro de permissão quando nenhum espaço de trabalho existe.

  • Definições de sugestões LLM automáticas já não mostram null para instruções específicas de idioma vazias.

  • As tabelas de funcionalidade de formato de ficheiro agora correspondem melhor ao verdadeiro suporte de formato, incluindo descrições, contexto, metadados de plurais, eliminação de cadeias de carateres obsoletas, extensões de ficheiro especializadas, e variantes unidas.

  • Aceitar um convite de projeto agora adiciona automaticamente o projeto aos projetos observados pelo utilizador.

  • Ignorar uma verificação que falha já não mostra um erro de análise JSON no editor de tradução.

  • Pesquisas de captura de ecrã sem um campo explícito agora correspondem apenas nomes de capturas de ecrã, e a caixa de pesquisa dá link para a documentação completa de pesquisa de captura de ecrã.

  • Contas de robôs anónimas e internas já não podem ser editadas através de gestão de utilizador genérica.

  • Sugestões de tradução de máquina LLM agora recupera mais de respostas de JSON estruturado mal formado.

  • As definições do Tradutor AI Azure agora rejeitam nomes de região mal formados antes de validar a conectividade de serviço.

Atualização

Siga as Instruções genéricas de atualização para realizar a atualização.

  • O Weblate agora requer a extensão PostgreSQL btree_gist para procuras de memória de tradução. A migração instala-a automaticamente quando o utilizado da base de dados tem privilégios suficientes. Instalações que usam um utilizador de base de dados não super utilizador deve criá-lo previamente antes de atualizar, veja Criar uma base de dados no PostgreSQL.

Colaboradores

Contribuições ao código

Michal Čihař, Karen Konou, Weblate CI, Benjamin Alan Jamie, Kartik Ohri

Contribuições de tradução

Michal Čihař, António Oliveira, 大学没毕业, 為什麼不加空格, ℂ𝕠𝕠𝕠𝕝 (𝕘𝕚𝕥𝕙𝕦𝕓.𝕔𝕠𝕞/ℂ𝕠𝕠𝕠𝕝), hoanghuy309, Libre, VfBFan, Peter Vančo, Jim Kats, ButterflyOfFire, Kiên Trần Trung, skittles poopy, Ulrik, Horus68, Mickaël Binos, Adam Havránek

Contribuições para a documentação

Michal Čihař, mayank-dev-15, Benjamin Alan Jamie

Todas as alterações em detalhes.

Weblate 2026.7

Lançado em 1 de Julho de 2026.

Novas funcionalidades

Melhorias

  • Edição RTL e exibição de tradução agora lidam melhor com texto bidirecional, incluindo controlos isolados Unicode no Teclado visual.

  • Controlo de acesso de interface de gestão agora é mais fina com permissões dedicadas ao site inteiro.

  • Os modelos de mensagem de pedido merge e commit padrões agora usam Conventional Commits, formulários de definições podem restaurar predefinições de instalação, e mensagens de pull request usam uma matriz de progresso de idioma compacto.

  • Personalizações de Módulo legal documentadas e opções para esconder páginas legais ou desativar numeração de documentação adicionadas.

  • documentação de segurança expandida para residência de dados, soberania de nuvem da UE, lançamento de artefactos, versões suportadas, verificação de lançamento, SBOMs, gestão de dependências, comunicação de vulnerabilidades, resposta de incidentes do serviço hospedado, e responsabilidades do operador auto alojado.

  • Atualizar ficheiro LINGUAS deteta LINGUAS melhor a presença do ficheiro.

  • Atualizar ficheiro POT (xgettext) agora pode deixar o idioma xgettext em branco para deixar o xgettext adivinhá-lo através de extensões de ficheiro fonte.

  • Atualizar ficheiro POT (xgettext), Atualizar ficheiro POT (Meson), Atualizar modelo gettext (Django), e Atualizar ficheiro POT (Sphinx) agora podem manter localizações fonte em ficheiros POT gerados mesmo quando os ficheiros POT traduzidos omitem localizações.

  • Extras instalados em âmbitos superiores agora são mostrados em páginas de extras de âmbitos inferiores, e extras abrangentes de âmbito podem listar componentes afetados com detalhes de compatibilidade.

  • WEBLATE_ALLOWED_ASSET_SIZE está agora disponível em contentor do Docker.

  • Sugestões automáticas de LLM agora usam exemplos traduzidos, instruções específicas de idioma, contexto de glossário mais rico, e modelos de contexto estruturado para um resultado mais fiável.

  • Meta descrições agora correspondem melhor a projetos individuais e instalações auto alojadas.

  • Modo zen, pesquisas filtradas, cadeias de carateres próximas, submissões de formulários de tradução, e páginas de gestão de extras agora carregam mais eficientemente em sites maiores.

  • Orientação Empacotamento Weblate para distribuições adicionada para responsáveis pela distribuição.

  • Importações de grandes componentes agora evitam processamento duplicado de memória de tradução.

  • Ficheiros GNU gettext PO (Objeto Portátil) agora podem ser configurados para remover cadeias de carateres obsoletas ao guardar, incluindo durante a manutenção do repositório.

  • Aceitação de traduções em massa agora confirma o número de sugestões afetadas, pode aprová-las para revisores, e processa a aceitação em plano de fundo.

  • Submeter grandes números de traduções pendentes agora coloca pedidos de navegador em fila no plano de fundo e evita tarefas de commit de repositório duplicadas.

  • Notificação de evento de alteração de extras agora pode usar predefinições para eventos de conteúdo de tradução, todos os eventos, ou eventos individuais selecionados.

  • Fedora Messaging agora valida ligações seguras com intermediários e expõe definições do momento de envio e prefixo de tópico.

  • Diagnósticos de componente agora organizam entradas por gravidade, emblemas de gravidade com códigos a cores, e mostra a contagem de erros na aba Diagnósticos.

  • Relatório de desempenho agora mostra a utilização de disco da base de dados PostgreSQL ao lado da utilização de disco de servidor e avisa quando a utilização de base de dados não pode ser coletada.

  • Relatório de desempenho agora mostra a utilização de disco da base de dados PostgreSQL ao lado da utilização de disco de servidor e avisa quando a utilização de base de dados não pode ser coletada ou quando não há espaço livre no destino da cópia de segurança para armazenar o dump da base de dados.

  • A pré-visualização Procurar e substituir agora mantém os parâmetros de pesquisa editáveis para que a consulta possa ser refinada antes de aplicar as substituições.

Correções de erros

  • Expressão regular e Espaços reservados agora aplicam tempos limite de expressões regulares ao avaliar marcadores de cadeias de carateres fonte (CVE 2026-62326, GHSA-r52j-4vjp-q949).

  • Mudanças de componentes restritos já não são expostas através do projeto aninhado, componentes, ou endpoints da API de mudança da tradução (CVE 2026-62249, GHSA-92m8-wv36-prmx).

  • Descarregamentos ZIP, incluindo conjuntos de tradução Ficheiros de metadados da App Store, já não seguem links simbólicos para fora da árvore descarregada (CVE 2026-61792, GHSA-xwj4-fp82-r2rj).

  • Equipas que aplicam autenticação de dois fatores agora também retêm permissões do site inteiro de membros humanos sem A2F configurada (CVE 2026-61790, GHSA-x86c-ff69-cr2m).

  • Pesquisa de objetos com o escopo global HTML e AJAX já não divulgam a existência de objetos em projetos privados (CVE 2026-55227, GHSA-2p9g-x3cv-5hh4).

  • Verificações de acesso da API da equipa agora previne gestores de projeto de lerem dados privados do projeto da equipa ou expandir tarefas de equipas com âmbito fora dos seus projetos permitidos (CVE 2026-55228, GHSA-2q2q-jr9g-v9rf).

  • Marcadores replacements mal-formados já não abortam verificações de comprimento da fonte.

  • Listas de componentes vazias já não são expostas a utilizadores sem permissão da gestão da lista de componentes.

  • Gestão do glossário já não duplica termos TBX ou mostra termos do idioma fonte em ambas as colunas de tradução.

  • Alertas de cadeia de caratere duplicada agora oferece uma ação de limpeza para remover cadeias de carateres repetidas de ficheiros de tradução.

  • Pedidos de revisão Gerrit os pushes de revisão podem voltar a incluir opções de push do Gerrit no ramo de destino.

  • A alternativa de correspondência do alvo webhook agora é mais estrita e comunicada em diagnósticos de componentes.

  • Criar componentes com weblate:// já não espera no trinco partilhado do repositório durante o pedido.

  • Licenças de projeto e de espaço de trabalho de tradução é predefinida para seguir licenças de componente e projetos mais de perto.

  • Pedidos de API PATCH de componente e categoria já não removem a categoria quando o campo é omitido.

  • Envios de documento e memória de tradução agora aplica TRANSLATION_UPLOAD_MAX_SIZE, e envios de documentação da API validam extensões de ficheiro.

  • Erro de sintaxe reStructuredText agora deteta agora deteta funções inline entre acentos graves isolados.

  • HTML inseguro agora deteta eficientemente valores de atributos de modelos apenas de HTML mudados em traduções.

  • Tamanho máximo da tradução já não quebra o texto configurado para caber em uma linha, verifica cadeias de carateres fonte, e atualiza pré-visualizações renderizadas após edições de fonte.

  • Widgets de bitmap e pré-visualizações Tamanho máximo da tradução agora usam Matplotlib e já não exigem Pango, Cairo, librsvg, ou GObject Introspection.

  • Reiniciar de repositório e histórico de atualização agora mantém atribuição, grava falhas de atualização remota, e inclui acompanhamento de reconciliação do ficheiro de tradução.

  • Atualizar URLs de repositório agora valida histórico Git compatível sem necessitar de um merge imediatamente bem sucedido.

  • Tradução Automática já não valida campos de componente escondidos ao utilizar tradução automática.

  • Links para cadeias de carateres marcadas para edição agora incluem todas as cadeias de carateres que precisam de edição, verificação, ou reescrita.

  • Verificações de permissões anónimas já não falham ao carregar equipas com o âmbito para projetos ou espaços de trabalho.

  • A API de criação do projeto pode usar novamente apenas o único espaço de trabalho do utilizador elegível quando nenhum espaço de trabalho é fornecido.

  • A manutenção automática Git agora está desativada para repositórios geridos pelo Weblate para evitar tarefas de manutenção independentes em execução simultânea.

  • Operações de repositório Git interrompidas agora ou são recuperadas e gravadas ou aparecem como um alerta de repositório.

  • Traduções observadas no painel agora incluem segmentos de caminho de categoria.

  • Níveis de envio não suportados agora mostra um espaço reservado de envio que aponta para traduções individuais.

  • Respostas de API de componente já não expõem a exportação de repositório, ramo de envio, ou links do navegador de repositório para utilizadores sem acesso ao repositório.

Compatibilidade

  • DeepL agora lida com versões da API DeepL internamente, utiliza v3 para gestão do glossário e descoberta de idioma, e já não suporta a API DeepL v1.

  • Tópicos Fedora Messaging agora incluem segmentos de caminho de categoria, e definições de intermediário são armazenadas enquanto AMQP URL com um anfitrião existente e definições SSL migradas automaticamente.

Atualização

Siga as Instruções genéricas de atualização para realizar a atualização.

  • Há várias mudanças em settings_example.py, mais significativas as alterações em CACHES e SOCIAL_AUTH_PIPELINE. Por favor, ajuste as suas configurações de acordo.

  • Entradas de memória de tradução existentes são movidas para armazenamento com escopo por uma tarefa de plano de fundo Celery periódica. Mantém o Celery em execução após a atualização; sugestões de memória de tradução podem estar incompletas até que o preenchimento esteja concluído.

Colaboradores

Contribuições ao código

Michal Čihař, Karen Konou, Weblate CI, michael-smt, Samuel Gomes, Dinis Sales, Gersona, Harsha C, Kartik Ohri, Besnik Bleta, fahadhewad

Contribuições de tradução

Dick Groskamp, Michal Čihař, 為什麼不加空格, VfBFan, Любомир Василев, 이정희, Aindriú Mac Giolla Eoin, Yaron Shahrabani, jiahaisheng, Horus68, Andrei Stepanov, Martin Srebotnjak, Peter Vančo, Hotripak, 大王叫我来巡山, Milo Ivir, ℂ𝕠𝕠𝕠𝕝 (𝕘𝕚𝕥𝕙𝕦𝕓.𝕔𝕠𝕞/ℂ𝕠𝕠𝕠𝕝), Mickaël Binos, Besnik Bleta, Frank Paul Silye, Matthaiks, abd sak, Hoseok Seo, Fulup Jakez, Gaël TISSERAND (Gtisseran), Azamat Аituganov, Mahirə Həsənova, Pierfrancesco Passerini, Libre, Mohamed Aymane Farhi, Júlia Rosell Saldaña, پرویز قادر, Jim Kats, Miguel A. Bouzada, Manuela Silva, reducedradius, Hanssium, Uh idk, Arif Budiman, Feike Donia, Zahid Rizky Fakhri, Emin Tufan Çetin, ojppe, தமிழ்நேரம், António Oliveira, Rumuz AGO, justcontributor, Flynn, Ștefan Zaharia, Nozomu Matsui, H-Media, Ecron, Weblate CI, Balázs Meskó, Fjuro, goeran, Adam Havránek, Priit Jõerüüt, Astrid Høie Silden, Alan S. Muhammed (Alan Kurdish), hoanghuy309, Yamin Siahmargooei, MeahNunh, Kartik Ohri, Valeria Sofia Azañero, Tuomas Hietala, Rafael Fontenelle, Yuri Chornoivan, AWwue-work, Kristoffer Grundström, ssantos, Andi Chandler, Ldm Public, Alc4Traz45, Szafranek13, hms5232, Victor K, 大学没毕业

Contribuições para a documentação

Michal Čihař, michael-smt, Karen Konou, Gersona, Weblate CI, Kartik Ohri, Besnik Bleta, fahadhewad, Harsha C

Todas as alterações em detalhe.

Weblate 2026.6.1

Atualizado em 1 de junho de 2026.

Correções de erros

  • Anúncios do idioma inteiro já não quebram páginas de sinopse de idioma.

Atualização

Siga as Instruções genéricas de atualização para realizar a atualização.

Colaboradores

Contribuições ao código

Michal Čihař

Contribuições para a documentação

Michal Čihař

Todas as alterações em detalhes.

Weblate 2026.6

Atualizado em 1 de junho de 2026.

Novas funcionalidades

  • Anúncios agora também podem ser geridas através da API REST do Weblate para projetos de idiomas específicos.

  • Pertenças à equipa agora podem ser limitadas a idiomas selecionadas para permissões de tradução para utilizadores individuais.

  • Estimativa de custo adicionada para relatórios de tradução.

  • Rastreio OpenTelemetry opcional adicionado para pedidos de backend e tarefas, e Google Cloud Error Reporting para erros de servidor tratados.

  • Espaços de trabalho adicionado a projetos de grupo relacionados, com listagem de projetos do espaço de trabalho, equipas no âmbito do espaço de trabalho e permissões de criação de projeto, espaço de trabalho herdado, projeto, e predefinições de categoria para definições de componente selecionados, e detalhes de faturação sempre que disponíveis.

Melhorias

  • Os contentores do Docker agora podem configurar WEBLATE_SAML_SECURITY_CONFIG para personalizar definições de segurança SAML, e ajustar WEBLATE_FORMATS usando WEBLATE_ADD_FORMATS e WEBLATE_REMOVE_FORMATS.

  • Desempenho melhorado da verificação de Inconsistente em grandes projetos.

  • Os campos de marcador de tradução agora usam um editor baseado em etiquetas com auto completar e sugestões agrupadas para todos os marcadores conhecidos.

  • Estatísticas de colaborador agora eliminam trabalho repetido na mesma cadeia de carateres por predefinição, com uma opção para contar todas as mudanças.

  • Integrações de hospedagem de código agora documenta URLs de token de acesso HTTPS e URLs SSH dedicados ao utilizador para acesso de repositórios, e Tradução contínua agora explica o porquê os pull requests de resolução de conflito através de squash merge do Weblate podem necessitar de um reiniciar de repositório.

  • Diagnósticos de componente de tradução agora incluem diagnósticos de componente ignoráveis para tradução de comunidade.

  • Capturas de ecrã e contexto visual agora suportam atribuição em massa para resultados de reconhecimento de texto em imagem, tornando a procura de cadeias de carateres em imagens enviadas mais fáceis de descobrir, mostrar contagem de cobertura de cadeias de carateres fonte, e incluir pesquisa de listagem avançada.

  • Artefactos de lançamento Lista de materiais de software agora incluem metadados CISA 2025 ao nível do documento.

Correções de erros

  • Validação de saída de URL agora rejeita alvos adicionais não públicos (CVE 2026-50127, GHSA-vmfc-9982-2m45).

  • Anúncios do idioma do projeto já não aparecem no projeto inteiro.

  • Controlos de acesso POST /api/screenshots/ reforçados contra a enumeração de projeto privado.

  • Emails de atividade de tentativa de registo de conta agora dão link para o reiniciar da palavra passe para ajudar utilizadores a finalizar a configuração de conta.

  • Links de A convidar novos utilizadores agora funcionam para utilizadores com sessão iniciada cuja conta possui o endereço de email convidado.

  • Procurar por cadeias de carateres com mudanças de conteúdo com uma mensagem de autor gravada agora suporta chaged_by:"", e filtros de mudança combinados agora aplicam o mesmo evento de mudança.

  • Pull requests de Gitea e Forgejo já não reconfiguram bifurcações remotas existentes para apontarem para o repositório fonte.

  • Sessões de tradução de idioma de projeto e categoria agora mantêm cadeias de carateres agrupadas por prioridade de componente e mostram a avisos de mudança de componente de forma fiável.

  • Os links das tarefas da página de interação permanecem agora centrados e mostram o idioma de tradução de destino.

  • Extras de atualização de gettext POT agora reanalisam traduções após submeter ficheiros POT e PO atualizados.

  • Repositórios Git agora atualizam ramos corretamente quando o remoto também tem uma etiquetam com o mesmo nome.

  • Alertas de configuração de conflitos de repositório agora permitem pushes diretos para o mesmo ramo.

  • Agendamentos de limpeza de obsoletos agora são removidos do Celery beat durante a atualização.

  • Páginas de tradução para projetos do espaço de trabalho já não quebram quando os campos do espaço de trabalho são deferidos.

Atualização

Siga as Instruções genéricas de atualização para realizar a atualização.

  • Há uma alteração em INSTALLED_APPS - weblate.workspaces deverá ser adicionado.

  • As migrações da base de dados podem demorar mais tempo em instâncias maiores.

Colaboradores

Contribuições ao código

Michal Čihař, Karen Konou, Weblate CI, Basheer Radman, michael-smt, Kristián Kunc, felixfon

Contribuições de tradução

Michal Čihař, VfBFan, 大王叫我来巡山, Emin Tufan Çetin, Basheer Radman, 為什麼不加空格, Peter Vančo, Christian Wia, Любомир Василев, Matthaiks, Andrei Stepanov, Libre, Besnik Bleta, ℂ𝕠𝕠𝕠𝕝 (𝕘𝕚𝕥𝕙𝕦𝕓.𝕔𝕠𝕞/ℂ𝕠𝕠𝕠𝕝), Balázs Meskó, Aindriú Mac Giolla Eoin, Adam Havránek, Dick Groskamp, Arif Budiman, Mickaël Binos, Ryo Nakano, hoanghuy309, Pierfrancesco Passerini, Alefsander Ribeiro Nascimento, Massimo Pissarello, justcontributor, 이정희, Cabdi Waaxid Siciid, Yaron Shahrabani, User2068, Kyotaro Iijima, pan93412, jernejp21, libermax, Phileas Fogg, Fjuro, Jim Kats, Fulup Jakez, Priit Jõerüüt, Ldm Public, Andi Chandler, Burak SDN, ojppe

Contribuições para a documentação

Michal Čihař, VfBFan, Basheer Radman, Weblate CI, michael-smt, felixfon

Todas as alterações em detalhes.

Weblate 2026.5

Lançado em 15 de maio de 2026.

Novas funcionalidades

  • Suporte para Ficheiros MDX adicionado para traduzir texto Markdown enquanto se preserva sintaxe JSX, com Parâmetros de formato de ficheiro partilhados com Ficheiros de Marcação para quebra de linha, blocos de código, informações iniciais, e gestão de espaço reservado.

  • Contexto de tradução LLM alargado adicionado para sugestões automáticas, cobertura de contexto de cadeia de carateres, explicações, traduções de idioma secundário, plurais, verificações em falha, e espaços reservados.

  • Foi adicionada uma notificação com um resumo da atividade de tradução, apenas na forma de resumo, veja Notificações.

  • Transferências CSV and XLSX em Transferir traduções agora exportam cadeias de carateres plurais em linhas de forma de plural separadas que podem ser importadas de volta.

  • Parâmetros de formato de ficheiro de Gettext PO e POT adicionados para controlar se o Weblate atualiza os cabeçalhos Language-Team, Last-Translator, X-Generator, e Report-Msgid-Bugs-To.

  • backup adicionado para executar serviços de cópias de segurança configurados de forma síncrona.

  • A API de pesquisa de memória de tradução agora ignora correspondência aproximada com o parâmetro da consulta exact.

  • Ficheiros de tradução CDN adicionada aos ficheiros de tradução publicados para a CDN configurada.

Melhorias

  • Utilizar terminações de linha DOS agora pode ser configurado usando o Parâmetros de formato de ficheiro dos_eol.

  • OpenAI e Alibaba já não exigem os SDKs Python dos seus fornecedores.

  • Mudanças inspecionadas de projeto e componente agora são registadas no histórico.

  • Envios de revisão Gerrit agora usam o Ramo do push como ramo alvo.

  • O Weblate agora verifica que CACHE_DIR permite execução de ficheiros auxiliares gerados.

  • O Lista de materiais de software agora é gerado durante o lançamento e publicado como um recurso de lançamento com versão em vez de ser armazenado no repositório fonte.

  • A página de tradução agora separa capturas de ecrã da informação de cadeia de carateres, colapsa detalhes de cadeias de carateres raramente utilizados, e agrupa ações de glossário e captura de ecrã mais consistentemente.

  • Gestão de acesso de projeto agora pagina utilizadores e explica melhor as atribuições de equipa automática no site inteiro.

  • Documentação de alojamento de código orientado para fornecedores adicionada e orientações sobre a Fórmula de plural ao estilo do Gettext.

  • A roda Python já não inclui catálogos de traduções fonte, ficheiros de teste, ou ficheiros exemplo de implementação, reduzindo o tamanho do pacote instalado.

  • A página de interação agora realça grupos de tarefas de tradução concretas para os recém-chegados.

  • Feeds RSS agora podem usar os mesmos filtros que a página de navegação de alterações.

  • Atualizar modelo gettext (Django) agora suporta ficheiros gettext PO usado como modelos quando eles são excluídos pelo filtro de idioma.

  • Modelo de ameaça Weblate revistado para um documento do estilo de contrato.

Correções de erros

  • Pré-visualizações de pesquisa otimizadas e Sugestões automáticas origens das sugestões contra XSS, e deixou de exibir detalhes de erros da base de dados em falhas de carregamento(CVE 2026-45106 / GHSA-6wxc-8mgq-w26m).

  • URL de envios de captura de ecrã, extração remota de HTML em CDN de localização JavaScript, e redirecionamento de verificações de estado de URL agora rejeitam alvos internos ou não-públicos por predefinição.

  • Os envios de revisões Gerrit agora rejeitam ramos alvo que contêm opções de envio, rastreiam o ramo alvo antes de invocar git-review, e sugere nomes de ramos curtos quando as referências completas são fornecidas.

  • A categoria Anúncios já não aparece no projeto inteiro, e o anunciar de eliminação de tradução agora honra permissões no âmbito do idioma.

  • O envio de merge request agora atualiza bifurcações remotas desatualizadas após mudar o alojamento de repositório.

  • Contagens de plural processadas de cabeçalhos de ficheiros de tradução agora são limitados, e fórmulas de plural são rejeitadas quando podem avaliar fora do alcance da forma plural configurada.

  • Códigos de acesso por projeto que expiram hoje agora permanecerão válidas até ao fim do dia.

  • Submissões ALTCHA CAPTCHA mal formadas e URLs de repositório em cargas de webhooks já não causam erros de servidor.

  • Espaços reservados agora junta intervalos sobrepostos e não aninhados provenientes de múltiplos marcadores.

  • Os registos de Efetuar cópias de segurança e mover o Weblate já não incluem avisos de troca de chaves post-quantum OpenSSH de conexões Borg remotas.

  • Os caminhos de repositório de categoria agora são tratados com mais segurança durante limpeza e movimentações.

  • As páginas de componente bloqueadas agora mostram uma ação cancelamento de subscrição após subscrever para desbloquear notificações.

  • Importações de Cópias de segurança de nível de projeto agora restauram em plano de fundo para evitar limites de memória do trabalhador web.

Compatibilidade

  • O marcador dos-eol já não é suportado. Utilize o dos_eol Parâmetros de formato de ficheiro em vez disso.

  • O registo CAPTCHA agora utiliza o protocolo ALTCHA widget v3 com prova de trabalho Argon2id.

  • O atributo de projeto set_language_team foi substituído com o parâmetro de formato de ficheiro po_set_language_team ao nível do componente; veja Parâmetros de formato de ficheiro.

  • O Weblate agora utiliza controlo de versões do calendário para lançamentos, veja Ciclo de lançamento.

  • O Weblate agora utiliza restrições mais rigorosas quanto às versões das dependências para controlar melhor o ambiente de execução.

Atualização

Siga as Instruções genéricas de atualização para realizar a atualização.

Colaboradores

Contribuições ao código

Michal Čihař, Karen Konou, AliceVisek, Gersona, Weblate CI

Contribuições de tradução

이정희, Andrei Stepanov, Milo Ivir, ssantos, 大王叫我来巡山, Kaya Zeren, reducedradius, Peter Vančo, amano, Michal Čihař, Anucha Hlownonkor, Yaron Shahrabani, UDP, Максим Горпиніч, Agnieszka C, VfBFan, Blueberry, ojppe, Francisco Serrador, Aindriú Mac Giolla Eoin, Fjuro, Любомир Василев, Frank Paul Silye, Temuri Doghonadze, Yuri Chornoivan, Sergio Granadoz, Sketch6580, Hyeonjeong Lee, 為什麼不加空格, ℂ𝕠𝕠𝕠𝕝 (𝕘𝕚𝕥𝕙𝕦𝕓.𝕔𝕠𝕞/ℂ𝕠𝕠𝕠𝕝), justcontributor, Kristijan "Fremen" Velkovski, Pierfrancesco Passerini, Besnik Bleta, Arif Budiman, Andi Chandler, jernejp21, Manuela Silva, Sjur N Moshagen, Abduqadir Abliz, Laitei, Кирилл Ванин, Matthaiks, Nozomu Matsui, Dick Groskamp, MrZwave, hoanghuy309, Jim Spentzos, Adam Havránek, Ricky Tigg, Christian Wia, ButterflyOfFire

Contribuições para a documentação

Michal Čihař, Gersona, Karen Konou, AliceVisek

Todas as alterações em detalhes.