weblate/docs/changes.rst
2026-04-24 11:22:21 +02:00

2213 lines
92 KiB
ReStructuredText
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Weblate 5.17.1
--------------
*Not yet released.*
.. rubric:: New features
* Add-ons that opt in to manual triggering can now be run from add-on management and the :ref:`addons-api`.
* :ref:`mt-ltengine` machine translation service.
.. rubric:: Improvements
* Fixed revert links in the translate-view history tab after moving a component to another project.
* Clarified the site-wide scope of the global ``user.edit`` permission.
* Clarified :ref:`autoclean-tm`.
* Clarified how :ref:`glossary-terminology` creates and maintains glossary language entries.
* Documented current :ref:`translation-memory` management options in the UI.
* Improved :ref:`screenshots` documentation and linked it from the screenshots UI.
* The OpenAPI schema is cleaner and provides tighter API description.
* Password updates now regenerate your personal API key by default.
* The web installation flow for :ref:`addon-weblate.consistency.languages` now shows a preview and requires confirmation before creating missing language files across projects, categories, or site-wide scopes.
* Improved :ref:`addon-weblate.discovery.discovery` guidance with guided client-side presets, clearer ``{{ component }}`` validation, and a worked discovery-template example in the docs.
* Admins can now revert edits from blocked users in a project or from any user site-wide.
* Clarified :ref:`generic-upgrade-instructions` to state that Celery queues should be empty before upgrading.
* Admin user management search can now find users by audit log IP address.
* Track superuser and site-wide team changes in :ref:`audit-log`.
* Installing :ref:`addon-weblate.discovery.discovery` on a component now suggests additional guided presets detected from the component repository layout.
* Project website and repository browser URL alerts now show validation errors more clearly.
* Project-level machine translation validation errors for private or local endpoints now better explain the allowed setup on hosted and self-managed sites.
* Attribute translations copied by :ref:`addon-weblate.autotranslate.autotranslate` to the add-on user.
* Documented restoring Docker based setups from backups, see :ref:`restore-docker`.
* :setting:`VCS_RESTRICT_PRIVATE` and :setting:`WEBHOOK_RESTRICT_PRIVATE` now reject URLs whose hostnames cannot be resolved during validation unless the host is explicitly allowed.
* Extended the conflicting repository setup alert to direct Git pushes, see :ref:`alerts`.
* :doc:`/admin/announcements` can now also be managed via the :ref:`api` for categories.
* :ref:`addon-weblate.autotranslate.autotranslate` now records automatic translation results in the add-on activity log.
* :ref:`profile` links now show an external-link warning where possible; obvious direct file download URLs and invalid code site or Fediverse profile links are rejected.
* Uploads now enforce :setting:`TRANSLATION_UPLOAD_MAX_SIZE` and :setting:`COMPONENT_ZIP_UPLOAD_MAX_SIZE` before parsing.
* Component ZIP imports and project backup restores now share stricter ZIP archive safety checks.
.. rubric:: Bug fixes
* :ref:`check-rst-references` no longer crashes on repeated explicit-link targets.
* Component updates no longer time out waiting on their own repository lock during validation.
* :ref:`check-punctuation-spacing` check no longer triggers false positives for placeholders.
* Client-side popup notifications triggered by JavaScript now use Bootstrap toasts.
* Dark theme Bootstrap subtle and emphasis colors now use higher-contrast values, improving popup toasts and other semantic UI elements.
* Repository alerts, history entries, and task messages now preserve multiline Git and SSH backend error output.
* Interrupted Git rebases now recover more reliably after worker restarts, and signal-terminated backend commands are reported more clearly.
* Borg backups that finish with warnings are no longer shown as failed in the management UI, and backup logs now show ``C`` entries for files that changed during the backup.
* Git exporter no longer rejects shared-history fetches just because the first negotiated ``have`` revisions are newer than Weblate's local history.
* :ref:`mt-weblate-translation-memory` automatic translation avoids broad PostgreSQL searches.
* Project backup import now revalidates component repository URLs before restore.
* The :guilabel:`SSH keys` management page can now remove stored host keys so changed host keys can be replaced there.
* Malformed IPv6 repository URLs no longer crash SSH host key detection.
* :ref:`addon-weblate.gettext.xgettext` and related POT update add-ons now replace the standard descriptive-title placeholder in normalized POT headers again.
* :ref:`addon-weblate.gettext.django` now skips repository ``locale`` trees during preflight validation, fixing components that store ``django.pot`` in a top-level ``locale`` directory.
* Screenshot OCR now skips corrupted or truncated image files instead of failing the request.
* Monolingual component validation now honors :ref:`component-source_language` when checking duplicate files alongside a separate :ref:`component-template`.
* The OpenAPI schema now describes action endpoints with their actual list, statistics, status, upload, and download response payloads.
* :ref:`Translation memory upload <memory-user>` and :wladmin:`import_memory` now report a validation error for TMX files missing the required header instead of failing the request.
* Project listings now show review progress columns when any listed project has reviews enabled.
* The missing file-mask matches :ref:`alert <alerts>` is now restored after rescans that leave only the source translation.
* Automatic translation from other components now ignores read-only source candidates with empty translations.
.. rubric:: Compatibility
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.17.1.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/164?closed=1>`__.
Weblate 5.17
------------
*Released on April 15th 2026.*
.. rubric:: New features
* Added :setting:`PROJECT_WEB_RESTRICT_ALLOWLIST` to exempt selected project slugs from project website restriction settings.
* Added :setting:`WEBSITE_ALERTS_ENABLED` setting to allow disabling project website availability checks and alerts.
* Added new management command :wladmin:`list_format_features`, which generates RST documentation snippets describing the supported features for every file format.
* Shared components can now be categorized within the target project, including through the :ref:`api` using the ``category_id`` parameter.
* Added :ref:`addon-weblate.gettext.xgettext`, :ref:`addon-weblate.gettext.meson`, :ref:`addon-weblate.gettext.django`, and :ref:`addon-weblate.gettext.sphinx` to update POT files with configurable update cadence.
* Added :setting:`PASSWORD_RESET_URL` to customize the sign-in page password reset link, useful for external identity providers (Docker env: :envvar:`WEBLATE_PASSWORD_RESET_URL`).
* Added :ref:`bulk user invitations <invite-user>`.
* Added :ref:`check-objc-format`.
* Added Forgejo notification webhook, see :ref:`forgejo-setup`.
* Added translation memory API filtering, scoped access, and bulk lookup support.
* Added ``from_component`` support to the REST API for creating components from existing component content and for seeding new translations by automatic translation from existing components.
* :doc:`/admin/announcements` can now be managed via the :ref:`api` for projects, components and translations.
* Added a ``soft`` mode to :setting:`VERSION_DISPLAY` to hide the Weblate version from prominent UI while keeping it available on the :guilabel:`About` page and :http:get:`/api/metrics/`.
.. rubric:: Improvements
* Track origin of newly added source strings.
* Markdown now uses ``auto-safe-html`` by default, applying :ref:`check-safe-html` and :ref:`autofix-html` only to plain text and source strings that contain standard HTML markup or valid custom elements.
* Improved LLM interfaces for better reliability.
* Improved logic for adding monolingual plurals in :doc:`/formats/gettext`.
* Added a component alert for conflicting merge request repository setup, see :ref:`alerts`.
* Improved plural handling in :ref:`auto-translation`.
* Improved error messages in some :ref:`api` endpoints.
* Updated Microsoft Entra ID authentication docs and Microsoft sign-in branding while keeping legacy Azure AD backend identifiers and documentation anchors for compatibility.
* Improved performance of project and category search result pages with very large match sets.
* Docker now exposes :envvar:`WEBLATE_COMMIT_PENDING_HOURS`, :envvar:`WEBLATE_SOCIAL_AUTH_KEYCLOAK_ID_KEY` for customizing the Keycloak unique user identifier claim, and :envvar:`WEBLATE_NGINX_IPV6` for controlling IPv6 listeners in the bundled NGINX.
* Project history now records project backups and project/component restore events.
* Improved documentation with auto-generated snippets for :ref:`addons`, :ref:`fmt_capabs`, :ref:`checks`, and :ref:`machine-translation` machines, and clarified merge-conflict behavior for exported repositories using shallow clones by default.
* Added :setting:`PROJECT_WEB_RESTRICT_PRIVATE` to reject project website and repository browser URLs targeting internal or non-public addresses, :setting:`WEBHOOK_RESTRICT_PRIVATE` to reject webhook URLs targeting internal or non-public addresses, and :setting:`VCS_RESTRICT_PRIVATE` to reject repository and push URLs targeting internal or non-public addresses. These are exposed in Docker as :envvar:`WEBLATE_PROJECT_WEB_RESTRICT_PRIVATE`, :envvar:`WEBLATE_WEBHOOK_RESTRICT_PRIVATE`, and :envvar:`WEBLATE_VCS_RESTRICT_PRIVATE`.
* Improved performance of :ref:`mt-weblate` lookups.
* Screenshot and font upload forms now honor :setting:`ALLOWED_ASSET_SIZE` which now defaults to 10 MB.
* Expanded :doc:`/security/threat-model` to cover webhook trust boundaries and delegated authorization boundaries, and clarified the instance-wide 2FA enforcement path in :doc:`/admin/auth`.
* :ref:`manage-vcs-reset-reapply` now recreates missing translation files when possible and otherwise reports a clearer recovery error instead of failing later with a generic parse error.
* Updated :doc:`/contributing/documentation` to describe the current ``make -C docs update-docs`` workflow for generated snippets.
* Linked repository components now inherit :ref:`component-push_on_commit`, :ref:`component-commit_pending_age`, and :ref:`component-auto_lock_error` from the linked component that owns the repository.
* Git exporter now provides clearer push and missing-revision errors to authorized users.
* Faster category and project removals, and improved performance of project language counting and API listing on projects with shared components.
* Clarified Git LFS limits of :ref:`git-exporter` in the UI and docs.
* Improved :ref:`backup` status reporting while keeping maintenance after failed backup attempts.
* Improved loading speed for comments on the translate page and reduced repeated metric queries when rendering activity charts on overview pages with cold caches.
.. rubric:: Security fixes
* Hardened repository boundary checks for symlink targets (:cve:`2026-40256` / :ghsa:`ffgh-3jrf-8wvh`).
* Hardened component file handling for repository symlinks (:cve:`2026-34242` / :ghsa:`hv99-mxm5-q397`).
* Tightened :ref:`api` permission enforcement (:cve:`2026-34393` / :ghsa:`3382-gw9x-477v`).
* Hardened project-level :ref:`machine-translation` against SSRF (:cve:`2026-34244` / :ghsa:`xrwr-fcw6-fmq8`).
* Tightened location validation in :ref:`addon-weblate.cdn.cdnjs` (:cve:`2026-33220` / :ghsa:`mqph-7h49-hqfm`).
* Enforced :setting:`ALLOWED_ASSET_DOMAINS` across redirects for asset downloads (:cve:`2026-33440` / :ghsa:`5fhx-9jwj-867m`).
* Hardened :ref:`addon-weblate.webhook.webhook` (:cve:`2026-39845` / :ghsa:`f8hv-g549-hwg2`).
* Removed unintended :ref:`translation-memory` API endpoints (:cve:`2026-33214` / :ghsa:`mpf5-3vph-q75r`).
* Tightened API access control for pending tasks (:cve:`2026-33212` / :ghsa:`vj45-x3pj-f4w4`).
* Hardened :ref:`projectbackup` restore against repository-local VCS configuration and hooks from uploaded archives (:cve:`2026-33435` / :ghsa:`558g-h753-6m33`).
.. rubric:: Bug fixes
* :ref:`Project backup <projectbackup>` now preserves source translation read-only handling, and source-side pending commits without files are discarded to avoid repeated parse failures.
* Fixed background failures in :ref:`addon-weblate.autotranslate.autotranslate`.
* Generated SSH wrapper scripts are now stored in :setting:`CACHE_DIR` instead of persistent SSH storage, and obsolete or stale wrappers are cleaned up during upgrade.
* Hardened Git branch handling to reject invalid branch names before repository operations.
* Sanitized repository and upload backend errors before exposing them in UI and API responses.
* Matching exporters now honor component file format parameters.
* :ref:`project-api` now clean up stale bot users on project deletion and upgrade, and prevent removing the last assigned team to avoid orphaning the token.
* Batch automatic translation now uses project-level machinery configuration instead of only site-wide settings.
* Fixed sorting by the **Unreviewed** column in listings.
* Fixed false positive in :ref:`check-xml-chars-around-tags` for Arabic letter Waw ("و") adjacent to XML tags.
* :ref:`addon-weblate.git.squash` better handle commits applied upstream.
* :wladmin:`list_checks` now requires exactly one ``--sections`` value when writing generated documentation to a file using ``--output``.
* Watched translations on the dashboard now use a stable language-aware ordering.
* Reduced error-reporting noise for handled authentication callback failures and clarified password reset confirmation messages.
* :doc:`/admin/machine` now falls back to the default API URL when base URL is empty.
* :ref:`mt-deepl` maps plain Portuguese to European Portuguese.
* :ref:`mt-mymemory` now falls back to HTTP status handling when the service returns a non-JSON error response.
* Push branches are no longer updated with upstream-only commits in multi-branch workflows.
* POT update add-ons now fall back to the component URL for the ``Report-Msgid-Bugs-To`` header when the component setting is empty.
* Improved repository lock error handling when deleting units.
* Adding new languages now rescans only the newly added languages instead of forcing a full component scan.
* :ref:`check-max-size` previews now keep the configured text box visible and render overflowing text in red.
* Restored documented default encoding fallback for :doc:`/formats/apple` and :doc:`/formats/java` when file format parameters are not explicitly set.
* Reduced repeated database queries in :ref:`addon-weblate.generate.fill_read_only` during the daily add-on task, and fixed auto-translation progress updates when the queued target disappears before execution.
* :doc:`/formats/android` now preserves template-defined escaped markup formatting when saving translations.
* REST API component creation now handles temporary uploaded files for ``docfile`` and ``zipfile`` uploads.
* SSH repository errors now distinguish changed host keys from missing host keys and avoid automatically trusting host key replacements.
* :ref:`machine-translation` no longer treats translatable reStructuredText role content as :ref:`placeables-mt`.
* :ref:`check-end-interrobang` now recognizes Arabic interrobang punctuation such as ``؟!`` and ````.
.. rubric:: Compatibility
* The ``project_scope`` class attribute on add-ons has been removed. Third-party add-ons that used ``project_scope = True`` should override ``can_install()`` to return ``False`` when ``component`` is not ``None``.
* The ``daily()`` method signature on add-ons has changed. Add-ons that previously overrode ``daily(component)`` to perform per-component work should now override ``daily_component(component)`` instead. The base ``daily()`` method automatically iterates components and calls ``daily_component()`` for each. Add-ons that can be optimized to operate at project scope should override ``daily(component, project)`` directly to implement project-level logic.
* Dropped support for MySQL and MariaDB as the database engine.
* Weblate now requires Django 6.0.
* Weblate now requires Git 2.46 or newer.
* Uploaded project backups are now validated more strictly during import and suspicious ZIP archives can be rejected; see :ref:`projectbackup`.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
* There are several changes in :file:`settings_example.py`, most notably :setting:`ADMINS` syntax has changed in Django and ``SOCIAL_AUTH_PIPELINE`` and ``INSTALLED_APPS`` need adjustments; please adjust your settings accordingly.
* If you run Weblate in Docker and rely on IPv6 listeners, review :envvar:`WEBLATE_NGINX_IPV6`. The default ``auto`` enables IPv6 listeners only when IPv6 is available in the container runtime; use ``on`` to always enable them or ``off`` to disable them.
* Outbound project links, webhook URLs, and repository or push URLs pointing to internal or non-public addresses are now rejected by default. If your setup intentionally uses internal addresses, adjust the corresponding restriction settings such as :setting:`PROJECT_WEB_RESTRICT_PRIVATE`, :setting:`WEBHOOK_RESTRICT_PRIVATE`, or :setting:`VCS_RESTRICT_PRIVATE`, and the related allowlists such as :setting:`VCS_ALLOW_HOSTS`.
.. rubric:: Contributors
.. include:: changes/contributors/5.17.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/158?closed=1>`__.
Weblate 5.16.2
--------------
*Released on March 6th 2026.*
.. rubric:: New features
* New setting :setting:`PUBLIC_ENGAGE` to make the engage page public even with :setting:`REQUIRE_LOGIN`.
.. rubric:: Improvements
* Improved matching in :doc:`/admin/memory`.
* Show the number of strings waiting for review in listings.
.. rubric:: Bug fixes
* Avoid displaying confusing status icons for ghost languages on project or category level.
* Fixed missing plural source strings when creating new bilingual plural units.
* Crash on certain pages with nested categories.
* Improved API validation when adding strings.
* Disabled throttling for incoming webhooks.
* Avoid displaying non-actionable ghost languages.
* Fixed highlighting in the translation editor.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.16.2.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/163?closed=1>`__.
Weblate 5.16.1
--------------
*Released on February 26th 2026.*
.. rubric:: New features
* :doc:`/formats/asciidoc`, :doc:`/formats/xliff` with Apple extensions, and :doc:`/formats/wxl` are now supported file formats.
* Added :setting:`REGISTRATION_ALLOW_DISPOSABLE_EMAILS` to optionally allow disposable e-mail domains during registration (Docker env: :envvar:`WEBLATE_REGISTRATION_ALLOW_DISPOSABLE_EMAILS`).
.. rubric:: Improvements
* Improved documentation for translation states to clarify the difference between :guilabel:`Needs editing`, :guilabel:`Needs rewriting`, and :guilabel:`Needs checking` states.
* Improved initial import of translations for :doc:`/formats/markdown` and :doc:`/formats/html`.
.. rubric:: Bug fixes
* :ref:`addon-weblate.webhook.slack` properly delivers all events.
* :ref:`check-punctuation-spacing` better handles XML markup.
* :doc:`/formats/stringsdict` better handle some plurals.
* Improved plurals handling for language variants.
* Fixed API access control.
* Users can manage their own notification subscriptions via the API.
* Project administrators can manage teams in their projects via the API, according to access control rules.
* The add-ons listing in the API now correctly honors user permissions (:cve:`2026-27457` / :ghsa:`wppc-7cq7-cgfv`).
* Fixed source column being cleared when translating monolingual :doc:`/formats/csv`.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.16.1.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/161?closed=1>`__.
Weblate 5.16
------------
*Released on February 16th 2026.*
.. rubric:: New features
* :ref:`check-multiple-capital` quality check.
* :ref:`check-xml-chars-around-tags` reduce translation errors for strings with XML entities.
* Bulk accepting suggestions from a specific user in :ref:`suggestions`.
* Cloning suggestions into translation in :ref:`suggestions`.
* :setting:`HIDE_SHARED_GLOSSARY_COMPONENTS` to hide glossaries shared into other projects.
* Added new management command :wladmin:`list_change_events`, which lists all possible change events, :ref:`addon-choice-events`.
* Added Anthropic machinery integration, see :ref:`mt-anthropic`.
* Encoding for :ref:`formats` can now be configured using :ref:`file_format_params` (e.g., ``csv_encoding``, ``properties_encoding``).
* Added support for anonymous commit names via :setting:`PRIVATE_COMMIT_NAME_TEMPLATE`.
* Consolidating identical strings in :ref:`markdown`, :ref:`html`, and :ref:`txt` files using ``*merge_duplicates`` parameters in :ref:`file_format_params`.
.. rubric:: Improvements
* Delete announcements permission can be assigned to teams, see :ref:`privileges`.
* :doc:`/user/search` better reports errors in the query strings.
* Regular repository maintenance is now performed in the background.
* Repository cleanup now recovers failed merges or rebases.
* Better visibility of :ref:`project-commit_policy` to translators.
* Validation of VCS settings :ref:`push-changes` has been extended.
* The default values for :ref:`project-translation_review` and :ref:`project-source_review` can be configured in settings.
* The :setting:`PRIVATE_COMMIT_EMAIL_TEMPLATE` now supports the ``{user_id}`` and ``{site_title}`` variables.
* The default value for personal translation memory contribution is now based on the :setting:`DEFAULT_AUTOCLEAN_TM` configuration.
.. rubric:: Bug fixes
* Argument injection in the management console (:cve:`2026-24126` / :ghsa:`33fm-6gp7-4p47`).
* Adding plural strings with singular matching existing string is now prohibited for bilingual translations (see :ref:`bimono`).
* Automatic :ref:`component-repoweb` URL for common code hosting sites.
* Improved cache isolation for suggestion checks to avoid interference with the parent unit checks.
* Gracefully handle invalid check flags in :ref:`custom-checks`.
* :doc:`/formats/appstore` no longer rewrites unchanged files.
.. rubric:: Compatibility
* :ref:`check-regex` no longer marks matched portions as non-translatable to allow generic regular-expression-based checking of strings. Use :ref:`check-placeholders` for checking regular expression matched placeholders.
* The default value for :setting:`WEBLATE_FORMATS` changed because of the removal of encoding-specific formats.
* File formats that only differed in encoding (CSV, GWT Properties, Java Properties, iOS Strings) have been merged into single formats.
* Fonts used by Weblate are now shipped in a standalone package.
* Dropped deprecated compatibility wrappers some classes with typos.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.16.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/156?closed=1>`__.
Weblate 5.15.2
--------------
*Released on January 14th 2026.*
.. rubric:: Improvements
* :ref:`addon-weblate.generate.generate` is now triggered upon installation.
* Screenshots updated from the repository have proper history.
* :ref:`check-rst-syntax` now reports unintended list conversion.
* :ref:`check-same` check ignores AsciiDoc source code blocks.
.. rubric:: Bug fixes
* Information leak via screenshots (:cve:`2026-21889` / :ghsa:`3g2f-4rjg-9385`).
* Explanation sync in :doc:`/formats/tbx`.
* User interface fixes.
* Clarified needs editing/checking/rewriting states.
* Automatically translated flag with bulk approvals.
* GitHub forks no longer trigger actions.
* Tighter validation of user provided websites to avoid confusing homoglyphs.
* Glossary support in :ref:`mt-google-translate-api-v3`.
* Invitations accepting when :setting:`REQUIRE_LOGIN` is turned on.
* :ref:`mt-cyrtranslit` installation.
.. rubric:: Compatibility
* Screenshot images are no longer served directly by the HTTP server, please adjust your HTTP server by removing serving of :file:`/media/`.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
* To make the fix for :cve:`2026-21889` effective, the serving of :file:`/media/` path should be removed from the HTTP server configuration; see :ref:`static-files`.
.. rubric:: Contributors
.. include:: changes/contributors/5.15.2.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/160?closed=1>`__.
Weblate 5.15.1
--------------
*Released on December 18th 2025.*
.. rubric:: New features
* Added :http:get:`/api/projects/(string:project)/languages/(string:language_code)/file/` to download a ZIP file of all component translations of a project for a specified language.
.. rubric:: Improvements
* Updated list of OpenAI models.
* Added :doc:`/devel/migration` guide to help users migrate from other localization platforms.
* Gracefully handle unreachable authentication providers.
* Update language definitions to CLDR 48.
.. rubric:: Bug fixes
* Git config file overwrite remote code execution (:cve:`2025-68398` / :ghsa:`8vcg-cfxj-p5m3`).
* Arbitrary file read via symbolic links (:cve:`2025-68279` / :ghsa:`g925-f788-4jh7`).
* Locking error that prevented updating linked components.
* Fixed e-mail SSL configuration in Docker container.
* Invitations on sites with required authentication.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.15.1.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/159?closed=1>`__.
Weblate 5.15
------------
*Released on December 15th 2025.*
.. rubric:: New features
* Batch automatic translation can now be manually triggered at project language, category or component level, see :ref:`auto-translation`.
* Added ability to completely disable the admin contact form by setting :setting:`CONTACT_FORM` to ``"disabled"``.
* Added new Ollama machinery tool for local Ollama AI model integration, see :ref:`mt-ollama`.
* Added :http:get:`/api/units/(int:id)/comments/` to get a list of comments for the given translation unit.
* Memory contents imported from TMX files include string context.
* :doc:`/formats/xliff2`, :doc:`/formats/nextcloud-json`, :doc:`/formats/resjson`, and :doc:`/formats/toml` are now supported file formats.
* :ref:`addon-weblate.fedora_messaging.publish` integration is now available as add-on.
* Added :ref:`check-laravel-format` quality check.
.. rubric:: Improvements
* Added disk usage overview in :ref:`manage-performance`.
* :http:get:`/api/groups/` now includes ``admins``.
* :ref:`mt-modernmt` better supports language variants.
* Automatically translated strings are now identified by a dedicated flag instead of a label.
* :ref:`addon-weblate.discovery.discovery` preserves :ref:`file_format_params`.
* :ref:`mt-cyrtranslit` now supports Belarusian and Greek.
* :ref:`block-user` now accepts internal notes that are not visible to the user.
* :ref:`addon-weblate.webhook.slack` and :ref:`addon-weblate.webhook.webhook` can be installed multiple times.
* Compatibility with Git SHA256 repositories.
* The allowed version control URLs can now be configured using :setting:`VCS_ALLOW_SCHEMES` and :setting:`VCS_ALLOW_HOSTS`.
* The API timeout for creating pull requests or forking can now be configured via :setting:`VCS_API_TIMEOUT`.
* Improved VCS integration documentation to clarify Docker environment variables, commit authorship, hosted vs. self-hosted setup, and authentication options.
* Timestamps from past are now shown with more detail.
* Added two new :ref:`states` to provide more detailed tracking of work-in-progress translations.
.. rubric:: Bug fixes
* Improper invitation validation upon accepting (:cve:`2025-64725` / :ghsa:`m6hq-f4w9-qrjj`).
* Server-Side Request Forgery while cloning repository (:cve:`2025-66407` / :ghsa:`hfpv-mc5v-p9mm`).
* Overpermissive webhook endpoint enabling mass repository updates plus component enumeration (:cve:`2025-67492` / :ghsa:`pj86-258h-qrvf`).
* Notification settings disclosure via Weblate API (:cve:`2025-67715` / :ghsa:`3pmh-24wp-xpf4`).
* :ref:`mt-deepl` integration now correctly handles translating to Chinese variants.
* :doc:`/formats/csv` format saving translations with empty source fields when using monolingual base files.
* Tighter validation of user and full names to avoid confusing homoglyphs.
* Avoid false positive checks upon committing pending changes.
* Performance improvements for file upload.
* Show glossary matches for the source language.
* Pull/merge requests are now only created when necessary.
.. rubric:: Compatibility
* Replaced custom ``RequireLoginMiddleware`` with Django 5.1's ``LoginRequiredMiddleware``. This makes settings ``LOGIN_REQUIRED_URLS`` and ``LOGIN_REQUIRED_URLS_EXCEPTIONS`` no longer supported, including their Docker environment variable counterparts.
* :ref:`addon-weblate.webhook.webhook` secret length is now validated to match the Standard Webhooks specification.
* Python 3.12 or newer is now required.
* GLib 2.80 or newer is now required.
* Dropped support for Web Monetization.
* :doc:`/formats/laravel` no longer includes ``return`` prefix in the keys.
* There are several changes in :file:`settings_example.py`, most notable are changed settings ``CRISPY_ALLOWED_TEMPLATE_PACKS`` and ``INSTALLED_APPS``; please adjust your settings accordingly.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.15.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/152?closed=1>`__.
Weblate 5.14.3
--------------
*Released on November 7th 2025.*
.. rubric:: Bug fixes
* Observed HTTPS status in :ref:`manage-performance`.
* Forced synchronization in the :guilabel:`Repository maintenance`.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.14.3.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/157?closed=1>`__.
Weblate 5.14.2
--------------
*Released on November 6th 2025.*
.. rubric:: Improvements
* Performance when adding strings.
.. rubric:: Bug fixes
* Adding terms to glossary was not working in some situations.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.14.2.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/155?closed=1>`__.
Weblate 5.14.1
--------------
*Released on November 5th 2025.*
.. rubric:: New features
* String context are now tracked in changes history and displayed when available.
.. rubric:: Improvements
* Document using Valkey in :ref:`celery` and :ref:`production-cache`.
* Added HTTP environment overview in :ref:`manage-performance`.
* Docker container is using Python 3.14.
* :ref:`check-icu-message-format` correctly handles implicit plurals.
.. rubric:: Bug fixes
* Avoid storing inviting user information in the invited user audit log (:cve:`2025-64326` / :ghsa:`gr35-vpx2-qxhc`).
* Omit admin IP address from audit log.
* Counting outgoing commits in the repository status.
* Listing of other translations.
* SAML configuration in the Docker container.
* :ref:`project-commit_policy` could miss some changes in certain situations.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.14.1.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/154?closed=1>`__.
Weblate 5.14
------------
*Released on October 22nd 2025.*
.. rubric:: New features
* :ref:`addon-weblate.flags.target_repo_update` is now available as an add-on.
* :http:delete:`/api/projects/(string:project)/labels/(int:label_id)/`.
* Added multivalue CSV in :ref:`download` for multivalue formats.
* New global permissions have been added to control viewing teams, users and roles without edit rights, see :ref:`privileges`.
* New ``unit.bulk_edit`` permission for bulk editing operations, replacing the overloaded use of ``translation.auto`` permission, see :ref:`privileges`.
* :ref:`date-search`.
* Last changed lookup in :ref:`search-strings`.
* :doc:`/security/localization-threat` documentation.
* :ref:`component-hide_glossary_matches` component setting.
* Screenshots now can be uploaded from a URL, see :ref:`screenshots`.
.. rubric:: Improvements
* :ref:`hooks` improvements.
* Now follows :ref:`api-errors`.
* Available in the OpenAPI.
* Dropped long-deprecated endpoints.
* Improved activity logging for :ref:`addon-weblate.consistency.languages` add-on.
* :ref:`check-rst-references` and :ref:`check-rst-syntax` now support substitutions.
* Improved performance for :ref:`check-multiple-failures` and :ref:`check-long-untranslated` checks with batch operations.
* :ref:`file_format_params` can now be configured via the :ref:`api`.
* Admins can configure :ref:`expiring-accounts`.
* Rate limiting of notification e-mails, configurable by :setting:`RATELIMIT_NOTIFICATION_LIMITS`.
* :guilabel:`Repository maintenance` now supports resetting the repository while keeping the current state of translations in Weblate.
* Improved listing of :ref:`addon-weblate.autotranslate.autotranslate` configuration.
.. rubric:: Bug fixes
* Plurals and :ref:`file_format_params` handling on file upload.
* :ref:`team-admins` can no longer edit teams besides membership.
* Highlighting syntax of overlapping elements.
* Searching case sensitivity for short strings.
* Inconsistent file formatting for new translations.
* Memory contents imported via the :wladmin:`import_memory` command are marked as active.
* Importing some strings from :doc:`/formats/xliff`.
.. rubric:: Compatibility
* The default attributes for :ref:`saml-auth` in Docker container now matches non-Docker defaults.
* Dropped long-deprecated :http:get:`/hooks/update/(string:project)/(string:component)/` and :http:get:`/hooks/update/(string:project)/`.
* Removed Akismet spam protection integration as it was no longer effective and used an unmaintained Python library.
* New positional argument (`activity_log_id`) passed to the add-on event handlers, see :class:`weblate.addons.base.BaseAddon`. Adjust any custom subclass accordingly.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.14.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/149?closed=1>`__.
Weblate 5.13.3
--------------
*Released on September 12th 2025.*
.. rubric:: Improvements
* Text on the registration page informs about possible use of users data in more detail.
* Clarified account removal view.
.. rubric:: Bug fixes
* Components pagination.
* :ref:`projectbackup` with same named components in different categories.
* Source string location display.
* Correctly track team adding via invitation in :ref:`audit-log`.
* :ref:`addon-weblate.consistency.languages` no longer includes shared component languages.
* :ref:`azure-devops-push` API URL parsing.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.13.3.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/153?closed=1>`__.
Weblate 5.13.2
--------------
*Released on September 5th 2025.*
.. rubric:: Improvements
* Error reporting upon validation of the file upload method.
* Detailed language information in new language notifications.
.. rubric:: Bug fixes
* Sign-in could not be completed with LDAP.
* Nonspacing mark changes highlighting in history.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.13.2.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/151?closed=1>`__.
Weblate 5.13.1
--------------
*Released on September 4th 2025.*
.. rubric:: Improvements
* Smarter retries of unwritable pending changes.
* Failed :ref:`2fa` is visible in :ref:`audit-log`.
.. rubric:: Bug fixes
* Sign-in form not shown for LDAP.
* Access control for :http:get:`/api/users/(str:username)/`.
* :ref:`check-rst-references` allows translatable reference names.
* :ref:`file_format_params` were not properly applied in some situations.
* Removed stale :ref:`addon-weblate.xml.customize`.
* :ref:`mt-libretranslate` compatibility with LibreTranslate 1.7.0.
* Username autocompletion in comments.
* Shorten session expiry while in :ref:`2fa` (:cve:`2025-58352` / :ghsa:`377j-wj38-4728`).
* Statistics when using :ref:`component-links`.
* :ref:`componentlists` are no longer blocking dashboard loading.
* OpenMetrics API format.
.. rubric:: Compatibility
* Removed support for no longer working :ref:`mt-ibm`.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
* There are several changes in :file:`settings_example.py`, most notably, ``django_otp.middleware.OTPMiddleware`` was removed from ``MIDDLEWARE``; please adjust your settings accordingly.
.. rubric:: Contributors
.. include:: changes/contributors/5.13.1.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/150?closed=1>`__.
Weblate 5.13
------------
*Released on August 15th 2025.*
.. rubric:: New features
* Enhanced :ref:`translation-memory` management with configurable status control, see :ref:`memory-status`.
* Added :wladmin:`cleanup_memory` management command to remove obsolete translation memory entries.
* :doc:`/formats/catkeys`.
* Some flags are now added to a string by default, based on locations; see :ref:`location-based-flags`.
* Added :ref:`project-commit_policy` setting to control which translations are included when committing changes.
* :ref:`file_format_params` can now be configured at the component level.
* New management command :wladmin:`list_file_format_params` to list all available file format parameters.
* Tag and attribute names can now be customized for :ref:`flatxml` with :ref:`file_format_params`.
.. rubric:: Improvements
* :ref:`search-strings` supports ``labels_count:NUMBER`` lookup.
* A new :envvar:`SENTRY_MONITOR_BEAT_TASKS` setting allows disabling Sentry monitoring of Celery Beat tasks.
* :envvar:`WEBLATE_SOCIAL_AUTH_OIDC_TITLE` and :envvar:`WEBLATE_SOCIAL_AUTH_OIDC_IMAGE` allow configuring the appearance of the generic OIDC authentication.
* Background commits are now identified by an internal user.
* Reorganized navigation menu.
* When editing a language definition, a warning about automated updates is shown; see :ref:`included-languages`.
* Avatars for API and internal accounts.
* Adding a new TOTP device removes the existing one by default; checkbox for not removing previous ones available.
* Creating pull or merge requests to remote repositories is no longer blocked by merge conflicts.
* :ref:`check-rst-references` correctly handles Unicode punctuation and detects more issues.
* Migration towards Bootstrap 5 has started, selected views now use Bootstrap 5.
* :ref:`xliff` now supports starting from scratch when :ref:`adding-projects`.
* :ref:`mt-openai` compatibility with latest models.
.. rubric:: Bug fixes
* :ref:`upload` correctly tracks authorship when using :guilabel:`Replace existing translation file`.
* :ref:`mt-deepl` integration now correctly handles all supported source languages.
* Possible crash on macOS 15 in :samp:`strxfrm`.
* Internal server error on permission denied while uploading files.
.. rubric:: Compatibility
* Some addons have been deprecated and replaced by :ref:`file_format_params`: :ref:`addon-weblate.gettext.customize`, :ref:`addon-weblate.json.customize`, :ref:`addon-weblate.yaml.customize`, :ref:`addon-weblate.xml.customize`.
* :ref:`machine-translation`, :ref:`addon-weblate.autotranslate.autotranslate` and :http:post:`/api/translations/(string:project)/(string:component)/(string:language)/autotranslate/` now support all search operators, not only limited filters. Existing add-on configuration has been migrated. API users will need to adjust invocation.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
* The distributed locking now uses a different implementation and that introduced several changes in :file:`settings_example.py`, most notably ``BACKEND`` in ``CACHES`` needs to be changed.
* There are several changes in :file:`settings_example.py`, most notable are changed settings ``CRISPY_ALLOWED_TEMPLATE_PACKS`` and ``INSTALLED_APPS``; please adjust your settings accordingly.
* The Docker container is now using :program:`granian`. This now requires explicit configuration of proxy trusted headers, including client protocol.
:envvar:`WEBLATE_SECURE_PROXY_SSL_HEADER` typically needs to be added to avoid redirect loop, for example:
.. code-block:: yaml
services:
weblate:
environment:
WEBLATE_IP_PROXY_HEADER: HTTP_X_FORWARDED_FOR
WEBLATE_SECURE_PROXY_SSL_HEADER: HTTP_X_FORWARDED_PROTO,https
.. seealso::
:ref:`reverse-proxy`
.. rubric:: Contributors
.. include:: changes/contributors/5.13.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/143?closed=1>`__.
Weblate 5.12.2
--------------
*Released on June 20th 2025.*
.. rubric:: Improvements
* :ref:`mt-deepl` integration now supports using next-gen LLM model.
.. rubric:: Bug fixes
* Restoring :ref:`projectbackup` with votes.
* Improved error handling in :ref:`mt-apertium-apy`.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.12.2.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/148?closed=1>`__.
Weblate 5.12.1
--------------
*Released on June 16th 2025.*
.. rubric:: Bug fixes
* :ref:`sbom` now includes serial number.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.12.1.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/147?closed=1>`__.
Weblate 5.12
------------
*Released on June 16th 2025.*
.. rubric:: Security
* Exposure of personal IP address via e-mail (:cve:`2025-49134` / :ghsa:`4qqf-9m5c-w2c5`).
* Lack of rate limiting when verifying second factor (:cve:`2025-47951` / :ghsa:`57jg-m997-cx3q`).
.. rubric:: New features
* Added :http:post:`/api/units/(int:id)/comments/` to create a new comment for the given translation unit.
* :ref:`addon-weblate.json.customize` now has a configurable compact mode.
* Added :ref:`check-kabyle-characters` quality check.
* :ref:`sbom` is now being provided for Weblate.
* :doc:`/security/index` documentation.
* Added support for :doc:`/formats/compose-multiplatform-resources`.
* Added :guilabel:`Translation Coordinator` role.
* :ref:`addon-weblate.webhook.slack` is now available as an add-on.
* Added :http:get:`/api/users/(str:username)/contributions/` to retrieve a list of all translations contributed by the user.
.. rubric:: Improvements
* :ref:`check-same` is now skipped for Toki Pona.
* :ref:`search-strings` supports ``has:location`` lookup.
* Unicode whitespaces are now considered as problematic characters for :ref:`glossary`, see :ref:`check-prohibited-initial-character`.
* :ref:`addon-weblate.webhook.webhook` logs are now displayed nicely.
* :ref:`addon-weblate.webhook.webhook` can be installed multiple times.
* :ref:`user-profile` can now include contact URL.
* :http:post:`/api/projects/` allows non-superusers to create projects when :ref:`billing` module is enabled.
* :http:post:`/api/groups/` supports project-scoped team creation by non-superusers.
* :http:get:`/api/users/` now includes ``languages``.
* :ref:`addon-weblate.webhook.webhook` documentation improved.
* Improved support for extended metadata in :ref:`tbx`.
* :ref:`addon-weblate.webhook.webhook` now includes a category field when available.
* Uploaded fonts can be updated and changes to them are tracked, see :ref:`fonts`.
* Weblate is now available in Bashkir language.
.. rubric:: Bug fixes
* :ref:`dashboard` translations ordering when paginating.
* Honor DeepL API Free glossary limits in :ref:`mt-deepl`.
* :ref:`addon-weblate.webhook.webhook` delivery of project-wide events.
* False reports of :ref:`check-translated` with flags or explanation changes.
* Creating new translations in :doc:`/formats/appstore`.
* :ref:`search-replace` correctly handles plurals.
.. rubric:: Compatibility
* The projects and categories default tab now shows translated languages.
* If no ``secret`` is provided in the Webhook add-on configuration, the Webhook request will not be signed, see :ref:`addon-weblate.webhook.webhook`.
* :ref:`saml-auth` support is no longer included in the default dependencies.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.12.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/141?closed=1>`__.
Weblate 5.11.4
--------------
*Released on May 7th 2025.*
.. rubric:: Improvements
* :ref:`addon-weblate.webhook.webhook` logs requests and responses.
.. rubric:: Bug fixes
* :ref:`addon-weblate.webhook.webhook` was not triggered in some situations.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.11.4.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/146?closed=1>`__.
Weblate 5.11.3
--------------
*Released on May 3rd 2025.*
.. rubric:: Bug fixes
* Fixed release publishing.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.11.3.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/145?closed=1>`__.
Weblate 5.11.2
--------------
*Released on May 3rd 2025.*
.. rubric:: Improvements
* Glossary performance in zen mode and automatic suggestions.
* Extended supported formats for :ref:`addon-weblate.json.customize`.
.. rubric:: Bug fixes
* XML export no longer crashes on locations with special characters.
* Improved error handling on ZIP upload.
* Django 5.2 compatibility.
* Avoid repeated glossary synchronizations.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.11.2.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/144?closed=1>`__.
Weblate 5.11.1
--------------
*Released on April 25th 2025.*
.. rubric:: Improvements
* :ref:`projectbackup` now include teams and categories.
* Docker health check is now supported in non-web service containers.
.. rubric:: Bug fixes
* :ref:`vcs-gitlab` integration now detects mergerequest conflicts more robustly.
* :ref:`addon-weblate.webhook.webhook` is now enabled in Docker.
* Removing pending glossary terms.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.11.1.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/142?closed=1>`__.
Weblate 5.11
------------
*Released on April 15th 2025.*
.. rubric:: New features
* Added :http:get:`/api/units/(int:id)/translations/` to retrieve a list of all target translation units for the given source translation unit.
* Added :http:delete:`/api/groups/(int:id)/roles/(int:role_id)` to delete a role from a group.
* :ref:`addon-weblate.webhook.webhook` is now available as an add-on.
* :ref:`check-automattic-components-format` check to validate placeholders in Automattic components.
* Inherited flags can now be discarded, see :ref:`custom-checks`.
* :ref:`secondary-languages` can now be specified in :ref:`project` and :ref:`component`.
* :ref:`mt-sources` can now be customized.
.. rubric:: Improvements
* Weblate now uses OpenAPI Specification 3.1.1 to generate the schema for :ref:`api`.
* :ref:`credits` and :ref:`stats` include translator's join date. Additionally, both reports can be sorted either by the join date or the number of strings translated.
* Widgets show more precise stats.
* :ref:`upload` is now tracked in history with details.
* :ref:`check-c-sharp-format` now supports ``csharp-format`` flag for compatibility with GNU gettext.
* Changes in string flags are now tracked in history.
* :doc:`/admin/machine` documentation extended.
* :ref:`addon-weblate.discovery.discovery` better handles hundreds of matches.
* Dismissing :ref:`checks` automatically updates propagated strings.
* :ref:`project-check_flags` can now also be configured on the project level.
* Improved rendering of :ref:`additional-flags` and :ref:`additional-explanation` changes in history.
* :ref:`mt-cyrtranslit` now automatically transliterates from a matching translation instead of the source strings.
* Errors from creating a duplicate glossary and failure to delete a glossary are now handled gracefully.
.. rubric:: Bug fixes
* **Security:** Cloning a component could leak component configuration into the URL (:cve:`2025-32021`).
* Fixed captcha verification when some time zone was configured.
* Improved translation propagation performance.
* Leading and trailing whitespace are now correctly stripped in glossary strings that also contain a :ref:`check-prohibited-initial-character`.
* Fixed background parsing of newly added translation files.
.. rubric:: Compatibility
* Registration now disallows disposable e-mail domains.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
* The database migration updates indexes and this might take considerable time.
.. rubric:: Contributors
.. include:: changes/contributors/5.11.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/136?closed=1>`__.
Weblate 5.10.4
--------------
*Released on March 19th 2025.*
.. rubric:: Bug fixes
* Fixed dismissing of checks.
* Reduced overhead of rendering other strings while translating.
* Improved performance of some :ref:`api` endpoints.
* Fixed :ref:`language-parsing-codes` in some corner cases.
* :ref:`search-strings` now properly finds exact match on the component.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.10.4.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/140?closed=1>`__.
Weblate 5.10.3
--------------
*Released on March 13th 2025.*
.. rubric:: Improvements
* Captcha is not shown for registrations via :ref:`invite-user`.
.. rubric:: Bug fixes
* Improved performance of API download endpoints.
* Optimized fetching other translations while translating.
* Reduced notifications overhead.
* Improved handling of components using :ref:`internal-urls`.
* Fixed authenticating with some Git servers.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.10.3.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/139?closed=1>`__.
Weblate 5.10.2
--------------
*Released on February 28th 2025.*
.. rubric:: Improvements
* Improved :ref:`translation-memory` matching.
* Visual diff now better highlights whitespace additions.
* Improved performance on large projects.
.. rubric:: Bug fixes
* Consistency of :ref:`search-boolean` in :doc:`/user/search`.
* Fixed some :ref:`addons` trigger upon installation.
* Fixed restoring of Git repositories from :ref:`projectbackup`.
.. rubric:: Compatibility
* Weblate has switched to a different library for zxcvbn integration, as the old one is no longer maintained, see :ref:`password-authentication`.
* Weblate uses proactive authentication with Git 2.46.0 and newer when HTTP credentials are supplied.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
* There are several changes in :file:`settings_example.py`, most notable are changed settings ``AUTH_PASSWORD_VALIDATORS`` and ``INSTALLED_APPS``; please adjust your settings accordingly.
.. rubric:: Contributors
.. include:: changes/contributors/5.10.2.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/138?closed=1>`__.
Weblate 5.10.1
--------------
*Released on February 21st 2025.*
.. rubric:: Improvements
* :ref:`check-multiple-failures` better shows failing checks including links to the strings.
* Detailed overview of locked components on project repository management.
* :ref:`search-strings` supports searching by source string state.
.. rubric:: Bug fixes
* :ref:`download` performs faster on project and language scopes.
* :ref:`zen-mode` does not display the source string twice when editing it.
* Fixed :ref:`glossary` terms highlighting.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.10.1.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/137?closed=1>`__.
Weblate 5.10
------------
*Released on February 14th 2025.*
.. rubric:: New features
* :ref:`check-rst-references` check to validate reStructuredText references.
* :ref:`check-rst-syntax` check to validate reStructuredText syntax.
* API can now produce CSV output.
* New management command :wladmin:`import_projectbackup` to import :ref:`projectbackup`.
.. rubric:: Improvements
* Improved error handling in :ref:`machine-translation-setup`.
* :envvar:`WEBLATE_REGISTRATION_CAPTCHA` is now available in Docker container.
* :guilabel:`Synchronize` on shared repository now operates on all its components.
* :ref:`check-punctuation-spacing` ignores markup such as Markdown or reStructuredText.
* :ref:`autofix-punctuation-spacing` does not alter reStructuredText markup.
* Improved validation errors in :doc:`/api`, see :ref:`api-errors`.
* Any language changed into an alias in `Weblate language data <https://github.com/WeblateOrg/language-data/>`__ is now reflected in all existing installations.
* Blank alias languages (not linked to any translation, profile, component, ...) are now automatically removed.
* :ref:`check-duplicate` better works with markup such as Markdown or reStructuredText.
* Automatically use DeepL API Free endpoint for the DeepL API Free authentication keys in :ref:`mt-deepl`.
* Compatibility with third-party static files storage backends for Django.
* Improved language compatibility in :ref:`mt-microsoft-translator`.
* :ref:`check-reused` check gracefully handles languages which are not case sensitive.
* :ref:`component-enforced_checks` are now applied on strings imported from the repository.
* Reduced false positives in :ref:`check-end-colon` and :ref:`check-end-stop` for CJK languages.
* OpenAPI schema for API includes more information.
* :ref:`check-regex` supports advanced regular expressions.
* :ref:`check-same` gracefully deals with case-insensitive languages.
.. rubric:: Bug fixes
* :ref:`check-reused` wrongly triggered after fixing the error.
* Dark theme behavior in some situations.
* Translation propagation sometimes did not work as expected.
* :http:header:`Content-Security-Policy` is now automatically set for AWS.
* :ref:`machine-translation-setup` sometimes cached results too aggressively.
* Fixed translations caching in :ref:`machine-translation-setup`.
* :ref:`autofix-html` automatic fixups honors the ``ignore-safe-html`` flag.
* :ref:`check-punctuation-spacing` no longer applies to Breton.
* Fixed :ref:`addon-weblate.git.squash` on linked repositories.
* :ref:`check-multiple-failures` avoids false positives and better lists related checks.
.. rubric:: Compatibility
* Running tests using Django test executor is no longer supported, see :doc:`/contributing/tests`.
* :ref:`check-bbcode` check is now disabled by default. The ``bbcode-text`` flag is required to activate this check, see :ref:`custom-checks`.
* API error responses format has changed, see :ref:`api-errors`.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
* There are several changes in :file:`settings_example.py`, most notable are the new settings for :ref:`api` in ``REST_FRAMEWORK``, ``SPECTACULAR_SETTINGS``, ``DRF_STANDARDIZED_ERRORS`` and ``INSTALLED_APPS``; please adjust your settings accordingly.
* PostgreSQL 12 and MariaDB 10.4 are no longer supported.
.. rubric:: Contributors
.. include:: changes/contributors/5.10.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/133?closed=1>`__.
Weblate 5.9.2
-------------
*Released on December 19th 2024.*
.. rubric:: Improvements
* Renamed :ref:`vcs-bitbucket-data-center` to match new product name.
* :http:get:`/api/users/` supports searching by user ID.
.. rubric:: Bug fixes
* Avoid query parser crash in multi-threaded environments.
* Avoid :ref:`autofix` crash on multi-value strings.
* Make project tokens work when :ref:`2fa` or :ref:`component-agreement` are enforced.
* Captcha solution were sometimes not accepted.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.9.2.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/135?closed=1>`__.
Weblate 5.9.1
-------------
*Released on December 16th 2024.*
.. rubric:: Bug fixes
* Fixed publishing package to PyPI.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.9.1.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/134?closed=1>`__.
Weblate 5.9
-----------
*Released on December 16th 2024.*
.. rubric:: New features
* Per-project :ref:`machine-translation-setup` can now be configured via the Project :ref:`api`.
* Added :http:get:`/api/projects/(string:project)/machinery_settings/`.
* Added :http:post:`/api/projects/(string:project)/machinery_settings/`.
* Translation memory import now supports files with XLIFF, PO and CSV formats, see :ref:`memory-user` and :wladmin:`import_memory` command in :ref:`manage`.
* The registration CAPTCHA now includes proof-of-work mechanism ALTCHA.
* Leading problematic characters in CSV are now checks for :ref:`glossary`, see :ref:`check-prohibited-initial-character`.
* Logging to :ref:`graylog`.
.. rubric:: Improvements
* :ref:`mt-google-translate-api-v3` now supports :ref:`glossary-mt` (optional).
* A shortcut to duplicate a component is now available directly in the menu (:guilabel:`Operations`:guilabel:`Duplicate this component`).
* Included username when generating :ref:`credits`.
* :ref:`bulk-edit` shows a preview of matched strings.
* :http:get:`/api/components/(string:project)/(string:component)/` exposes component lock state.
* Editor in :ref:`zen-mode` is now stick to bottom of screen.
* Added page navigation while :ref:`translating`.
* :ref:`manage-appearance` now has distinct settings for dark mode.
* Improved :ref:`translation-propagation` performance.
* More detailed error messages for :http:post:`/api/translations/(string:project)/(string:component)/(string:language)/file/`.
.. rubric:: Bug fixes
* Using the ``has:variant`` field now correctly displays strings that have variants in the search language, see :ref:`search-strings`.
* Saving newly added strings in some formats.
* :ref:`check-java-printf-format` gracefully handles escaping.
.. rubric:: Compatibility
* :ref:`rollbar-errors` integration no longer includes client-side error collection.
* Weblate now requires Git 2.28 or newer.
* Any custom code that relied on ``Change`` models signals should be reviewed.
* :ref:`fedora-messaging` integration needs to be updated to be compatible with this release.
* :envvar:`WEB_WORKERS` now configures number of threads instead of processes.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.9.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/127?closed=1>`__.
Weblate 5.8.4
-------------
*Released on November 19th 2024.*
.. rubric:: Improvements
* :ref:`search-users` can search based on user changes.
.. rubric:: Bug fixes
* Fixed occasional crash in :ref:`rss`.
* :ref:`check-icu-message-format` gracefully handles plural strings.
* :ref:`vcs-bitbucket-cloud` correctly generates pull request description.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.8.4.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/132?closed=1>`__.
Weblate 5.8.3
-------------
*Released on November 6th 2024.*
.. rubric:: Bug fixes
* Formatting of some :ref:`audit-log` entries.
* Fixed XML escaped output in some machine translation integrations.
* Fixed duplicate listing of newly added glossary terms.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.8.3.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/131?closed=1>`__.
Weblate 5.8.2
-------------
*Released on November 1st 2024.*
.. rubric:: Bug fixes
* Update outdated plural definitions during the database migration.
* Reduced number of database queries when updating multiple strings.
* Leading problematic characters in :ref:`glossary` terms are now properly stripped in uploaded files.
* Improved :ref:`workflow-customization` performance.
* Fixed XML escaped output in some machine translation integrations.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.8.2.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/129?closed=1>`__.
Weblate 5.8.1
-------------
*Released on October 15th 2024.*
.. rubric:: Bug fixes
* Use lower case name for the Python package.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.8.1.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/128?closed=1>`__.
Weblate 5.8
-----------
*Released on October 15th 2024.*
.. rubric:: New features
* Added :ref:`component-key_filter` in the component.
* :doc:`/user/search` now supports filtering by object path and :ref:`date-search`.
* Merge requests credentials can now be passed in the repository URL, see :ref:`settings-credentials`.
* :ref:`mt-azure-openai` automatic suggestion service.
* :ref:`vcs-bitbucket-cloud`.
.. rubric:: Improvements
* :ref:`mt-modernmt` supports :ref:`glossary-mt`.
* :ref:`mt-deepl` now supports specifying translation context.
* :ref:`mt-aws` now supports :ref:`glossary-mt`.
* :ref:`autofix` for Devanagari danda now better handles latin script.
* :ref:`autofix` for French and Breton now uses a non-breaking space before colons instead of a narrow one.
* :ref:`api` now has a preview OpenAPI specification.
* Stale, empty glossaries are now automatically removed.
* :kbd:`?` now displays available :ref:`keyboard`.
* Translation and language view in the project now include basic information about the language and plurals.
* :ref:`search-replace` shows a preview of matched strings.
* :ref:`aresource` now support translatable attribute in its strings.
* Creating component via file upload (Translate document) now supports bilingual files.
.. rubric:: Bug fixes
* Displaying :ref:`workflow-customization` setting in some cases.
* Users can add component in any language already existing in a project.
* :ref:`check-unnamed-format` better handles some strings, such as :ref:`check-python-brace-format`.
.. rubric:: Compatibility
* Weblate now requires Python 3.11 or newer.
* :ref:`mt-aws` now requires the ``TranslateFullAccess`` permission.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
* There are several changes in :file:`settings_example.py`, most notable are the new settings for :ref:`api` in ``SPECTACULAR_SETTINGS`` and changes in ``REST_FRAMEWORK`` and ``INSTALLED_APPS``; please adjust your settings accordingly.
.. rubric:: Contributors
.. include:: changes/contributors/5.8.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/122?closed=1>`__.
Weblate 5.7.2
-------------
*Released on September 5th 2024.*
.. rubric:: Improvements
* :ref:`2fa` remembers last method used by user.
* Instead of redirecting, the sign-out now displays a page.
* Improved readability of exception logs.
.. rubric:: Bug fixes
* Updating of translations from the repository in linked components.
* Improved rendering of digest notification e-mails.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.7.2.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/126?closed=1>`__.
Weblate 5.7.1
-------------
*Released on August 30th 2024.*
.. rubric:: Improvements
* Updated language names to better describe different scripts and Sinitic languages.
* :ref:`addon-weblate.cleanup.generic` is now automatically installed for formats which need it to update non-translation content in the translated files.
.. rubric:: Bug fixes
* Support for using Docker network names in automatic suggestion settings.
* Fixed authentication using some third-party providers such as Azure.
* Support for formal and informal Portuguese in :ref:`mt-deepl`.
* QR code for TOTP is now black/white even in dark mode.
* Fixed TOTP authentication when WebAuthn is also configured for the user.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
.. rubric:: Contributors
.. include:: changes/contributors/5.7.1.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/125?closed=1>`__.
Weblate 5.7
-----------
*Released on August 15th 2024.*
.. rubric:: New features
* :ref:`2fa` is now supported using Passkeys, WebAuthn, authentication apps (TOTP), and recovery codes.
* :ref:`2fa` can be enforced at the team or project level.
* :ref:`adding-new-strings` can now create plural strings in the user interface.
* :ref:`labels` now include description to explain them.
* New :ref:`notifications` for completed translation and component.
* :ref:`mt-openai` now supports custom models and URLs and offers rephrasing of existing strings.
* :ref:`mt-cyrtranslit` automatic suggestion service.
.. rubric:: Improvements
* :ref:`addon-weblate.properties.sort` can now do case-sensitive sorting.
* The status widgets are now supported site-wide and language-wide, see :ref:`promotion`.
* :ref:`reports` are now available for categories.
* Highlight newlines in the editor.
* :doc:`/formats/csv` better handle files with two fields only.
* Browse mode can now be navigated using keyboard, see :ref:`keyboard`.
* :http:get:`/api/components/(string:project)/(string:component)/credits/` and :http:get:`/api/projects/(string:project)/credits/` API endpoints for components and projects.
* :ref:`glossary-terminology` entries in Glossary can now only be created by users with :guilabel:`Add glossary terminology` permission.
* :ref:`check-python-brace-format` detects extra curly braces.
* Screenshots now can be pasted from the clipboard in :ref:`screenshots`.
.. rubric:: Bug fixes
* Accessibility of keyboard navigation.
* :ref:`git-exporter` now works with all Git based :ref:`vcs`.
* :ref:`check-max-size` sometimes failed to render screenshot.
.. rubric:: Compatibility
* Weblate now uses mistletoe instead of misaka as a Markdown renderer.
* :ref:`csp` is now stricter what might block third-party customizations.
* Monolingual formats no longer copy comments from :ref:`component-template` when adding strings to translation.
* Dropped support for Amagama in :ref:`machine-translation-setup` as the service is no longer maintained.
* Default value for :setting:`SENTRY_SEND_PII` was changed.
* Translation credit reports in the JSON format now follows a different format for entries.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
* There are several changes in :file:`settings_example.py`, most notable are the new settings for :ref:`2fa` and changes in ``INSTALLED_APPS``, ``SOCIAL_AUTH_PIPELINE`` and ``MIDDLEWARE``; please adjust your settings accordingly.
* :setting:`ENABLE_HTTPS` is now required for WebAuthn support. If you cannot use HTTPS, please silence related check as described in :setting:`ENABLE_HTTPS` documentation.
.. rubric:: Contributors
.. include:: changes/contributors/5.7.rst
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/116?closed=1>`__.
Weblate 5.6.2
-------------
*Released on July 1st 2024.*
.. rubric:: Bug fixes
* Rendering of :ref:`labels` color selection widget.
* Detection of pending outgoing commits.
* :ref:`addons` button layout.
* Crash when installing :ref:`addon-weblate.discovery.discovery` add-on.
* Removal of source strings in :ref:`glossary`.
* Validation of :ref:`projectbackup` ZIP file upon restoring (:cve:`2024-39303` / :ghsa:`jfgp-674x-6q4p`).
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/124?closed=1>`__.
Weblate 5.6.1
-------------
*Released on June 24th 2024.*
.. rubric:: Improvements
* Docker container accepts :envvar:`WEBLATE_REMOVE_ADDONS` and :envvar:`WEBLATE_ADD_MACHINERY` to customize automatic suggestion services and :envvar:`WEBLATE_CORS_ALLOW_ALL_ORIGINS` for CORS handling in API.
* Added OpenMetrics compatibility for :http:get:`/api/metrics/`.
.. rubric:: Bug fixes
* Language aliases in :doc:`/admin/machine`.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/123?closed=1>`__.
Weblate 5.6
-----------
*Released on June 19th 2024.*
.. rubric:: New features
* :ref:`addons` activity log for tracking add-on activity.
* Improved date range selection in :ref:`reports`.
.. rubric:: Improvements
* :ref:`notifications` now include strings which need updating.
* Improved compatibility with password managers.
* Improved tracking of uploaded changes.
* Gracefully handle temporary machine translation errors in automatic suggestions.
* :http:get:`/api/units/(int:id)/` now includes ``last_updated`` timestamp.
* :http:get:`/api/changes/(int:id)/` now includes ``old`` and ``details``.
* Reduced memory usage and increased performance of some views.
.. rubric:: Bug fixes
* Loading of strings with many glossary matches.
* Fixed behavior of some site-wide :ref:`addons`.
* Saving strings needing editing to :doc:`/formats/winrc`.
* :ref:`check-xml-tags` better handle XML entities.
* Automatic suggestions could mix up replacements between translated strings.
.. rubric:: Compatibility
* Compatibility with Django 5.1.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/114?closed=1>`__.
Weblate 5.5.5
-------------
*Released on May 13th 2024.*
.. rubric:: Bug fixes
* False-positive merge failure alert when using push branch.
* Cleanup of stale repositories.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/121?closed=1>`__.
Weblate 5.5.4
-------------
*Released on May 10th 2024.*
.. rubric:: Improvements
* Visually highlight explanation in :ref:`glossary`.
* Add :ref:`addons` history tab in management.
* New :ref:`alerts` when :ref:`glossary` might not work as expected.
* :doc:`/admin/announcements` can be posted on project/language scope.
.. rubric:: Bug fixes
* Improved handling placeables in :ref:`mt-openai`.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/120?closed=1>`__.
Weblate 5.5.3
-------------
*Released on May 3rd 2024.*
.. rubric:: Improvements
* Improved performance of rendering large lists of objects.
* Component management: added links to manage project/site-wide :ref:`addons`.
.. rubric:: Bug fixes
* Fixed crashes with librsvg older than 2.46.
* Daily execution of some :ref:`addons`.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/119?closed=1>`__.
Weblate 5.5.2
-------------
*Released on April 26th 2024.*
.. rubric:: Bug fixes
* Fixed publishing packages to PyPI.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/118?closed=1>`__.
Weblate 5.5.1
-------------
*Released on April 26th 2024.*
.. rubric:: New features
* :doc:`/user/search` supports ``source_changed:DATETIME``.
* Added several new :ref:`component-language_code_style`.
.. rubric:: Improvements
* Display more details on source string change in history.
* :ref:`mt-microsoft-translator` now supports using custom translators.
* Improved error handling in :ref:`invite-user`.
* Added PNG status badge.
* Added list of managed projects to the dashboard view.
* More detailed status of outgoing commits.
* Reduced memory usage.
.. rubric:: Bug fixes
* Fixed skipped component update with some add-ons enabled.
* Daily execution of project and site wide add-ons.
* Allow editing strings when the source is marked for editing.
* Updates of the last updated timestamp of a string.
* Fixed project and site wide installation of :ref:`addon-weblate.git.squash` and :ref:`addon-weblate.discovery.discovery` add-ons.
* Graceful handling of locking errors in the :ref:`api`.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
* There is a change in ``REST_FRAMEWORK`` setting (newly added ``EXCEPTION_HANDLER``).
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/117?closed=1>`__.
Weblate 5.5
-----------
*Released on April 20th 2024.*
.. rubric:: New features
* :ref:`addons` can be now installed project-wide and site-wide.
* API improvements.
* Added :http:get:`/api/categories/(int:id)/statistics/`.
* Added :http:get:`/api/projects/(string:project)/file/`.
* Added :http:post:`/api/groups/(int:id)/admins/`.
* Added :http:delete:`/api/groups/(int:id)/admins/(int:user_id)`.
* Improved :http:post:`/api/translations/(string:project)/(string:component)/(string:language)/units/`.
* Added :ref:`mt-systran` automatic translation support.
.. rubric:: Improvements
* Docker container now validates user password strength by default, see :envvar:`WEBLATE_MIN_PASSWORD_SCORE`.
* Improved error reporting in :ref:`machine-translation-setup`.
* :ref:`check-max-size` better displays rendered text.
* Admins can now specify username and full name when :ref:`invite-user`.
* Added :ref:`check-end-interrobang`.
* :ref:`alerts` are now refreshed when needed, not just daily.
* :doc:`/devel/reporting` uses specific word count for CJK languages.
* Team membership changes are now tracked in :ref:`audit-log`.
.. rubric:: Bug fixes
* :ref:`check-check-glossary` works better for languages not using whitespace.
* :ref:`alerts` better handle non-latin source languages.
* :ref:`check-max-size` sometimes ignored ``font-spacing:SPACING`` flag.
* Fixed per-language statistics on nested categories.
* Fixed categories listing on per-language pages.
* Fixed :guilabel:`Needs editing` state calculation.
* Fixed changing :ref:`component-push` with :ref:`vcs-gerrit`.
* Fixed using categorized components in :ref:`manage`, :ref:`memory` or :ref:`auto-translation`.
.. rubric:: Compatibility
* Several API calls might be affected by stricter validation of boolean fields by Django REST Framework. For example :http:post:`/api/projects/(string:project)/components/`.
* Uniqueness of name and slug of a component is now enforced at the database level on PostgreSQL 15+.
* Docker image now ships Python packages in :file:`/app/venv` and installs using :program:`uv`.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
* There are several changes in :file:`settings_example.py`, most notable is changes in ``INSTALLED_APPS`` and ``LOGOUT_REDIRECT_URL``, please adjust your settings accordingly.
* Weblate now requires Python 3.10 and Django 5.0.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/111?closed=1>`__.
Weblate 5.4.3
-------------
*Released on March 26th 2024.*
.. rubric:: Bug fixes
* Superuser access to components with :ref:`component-restricted`.
* Adjusted default ``LOGIN_REQUIRED_URLS_EXCEPTIONS`` to not block :ref:`manage-appearance`.
* Avoid crash on pushing changes to diverged repository.
* Avoid crash when installing :ref:`addon-weblate.generate.pseudolocale`.
* :ref:`azure-setup` gracefully handles repositories with spaces in URL.
* :ref:`mt-deepl` gracefully handles glossaries for language variants.
* :doc:`/formats/excel` better handles blank cells.
* Fixed possible data loss when merging gettext PO file changes in Git.
* Repository operations on project could have skipped some components.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/115?closed=1>`__.
Weblate 5.4.2
-------------
*Released on February 22nd 2024.*
.. rubric:: Bug fixes
* Displaying debugging page in case of database connection issues.
* Gracefully handle migration with duplicate built-in teams.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/113?closed=1>`__.
Weblate 5.4.1
-------------
*Released on February 19th 2024.*
.. rubric:: Bug fixes
* Possible crash on Weblate upgrade check when cached from the previous versions.
* Gracefully handle migration with duplicate built-in teams.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/112?closed=1>`__.
Weblate 5.4
-----------
*Released on February 15th 2024.*
.. rubric:: New features
* :ref:`check-perl-brace-format` quality check.
* :doc:`/formats/moko-resources`.
* :doc:`/formats/formatjs`.
* Search input is now syntax highlighted, see :doc:`/user/search`.
* Weblate is now available in Tamil.
.. rubric:: Improvements
* Better logging in :wladmin:`createadmin`.
* :ref:`addon-weblate.discovery.discovery` now reports skipped entries.
* Adding string in a repository triggers :ref:`notifications`.
* :ref:`mt-openai` better handles batch translations and glossaries.
* :ref:`mt-libretranslate` better handles batch translations.
* Text variant of notification e-mails now properly indicate changed strings.
* File downloads now honor :http:header:`If-Modified-Since`.
* :ref:`num-words` support for CJK languages.
* :ref:`addon-weblate.discovery.discovery` now preserves :ref:`componentlists`.
* Nicer formatting of :ref:`glossary` tooltips.
* :http:get:`/api/components/(string:project)/(string:component)/` now includes information about linked component.
* Improved :ref:`workflow-customization` configuration forms.
.. rubric:: Bug fixes
* Plural forms handling in :doc:`/formats/qt`.
* Added missing documentation for :setting:`ADMINS_CONTACT`.
* Automatic fixer for :ref:`autofix-punctuation-spacing` no longer adds new whitespace.
* Pending changes committing could be omitted under some circumstances.
* :ref:`addon-weblate.cleanup.blank` now correctly removes blank plurals.
.. rubric:: Compatibility
* Last changed timestamp now reflects changes outside Weblate as well. This affects both :ref:`api` and the user interface.
* Releases are signed by Sigstore instead of PGP, see :ref:`verify`.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/109?closed=1>`__.
Weblate 5.3.1
-------------
*Released on December 19th 2023.*
.. rubric:: Bug fixes
* Not updating statistics in some situations.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/110?closed=1>`__.
Weblate 5.3
-----------
*Released on December 14th 2023.*
.. rubric:: New features
* :ref:`mt-openai` automatic suggestion service.
* :ref:`mt-alibaba` automatic suggestion service.
* Added labels API, see :http:get:`/api/projects/(string:project)/labels/`.
* :ref:`glossary-mt`.
* New automatic fixer for :ref:`autofix-punctuation-spacing`.
* :ref:`mt-google-translate-api-v3` now better honors placeables or line breaks.
.. rubric:: Improvements
* Reduced memory usage for statistics.
* :ref:`mt-deepl` performs better in :ref:`auto-translation` and supports :ref:`glossary-mt`.
* :ref:`mt-microsoft-translator` supports :ref:`glossary-mt`.
* Improved region selection in :ref:`mt-google-translate-api-v3`.
* Added nested JSON exporter in :ref:`download`.
* Improved :ref:`git-exporter` performance on huge repositories.
.. rubric:: Bug fixes
* Removing stale VCS directories.
.. rubric:: Compatibility
* Dropped Microsoft Terminology service for automatic suggestions, as it is no longer provided by Microsoft.
* ``labels`` in units API now expose full label info, see :http:get:`/api/units/(int:id)/`.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/107?closed=1>`__.
Weblate 5.2.1
-------------
*Released on November 22nd 2023.*
.. rubric:: Improvements
* Show search field after no strings found while translating.
* Added soft hyphen to special-characters toolbar.
.. rubric:: Bug fixes
* Database backups compatibility with Alibaba Cloud Database PolarDB.
* Crash on loading statistics calculated by previous versions.
* Sort icons in dark mode.
* Project level statistics no longer count categorized components twice.
* Possible discarding pending translations after editing source strings.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/108?closed=1>`__.
Weblate 5.2
-----------
*Released on November 16th 2023.*
.. rubric:: New features
* :ref:`vcs-azure-devops`.
.. rubric:: Improvements
* Faster statistics updates.
* Better e-mail selection in user profile.
* :ref:`autofix` are now applied to suggestions as well.
* :ref:`mt-deepl` can now configure default formality for translations.
* Use neutral colors for progress bars and translation unit states.
* :ref:`addon-weblate.gettext.mo` can optionally include strings needing editing.
* Use :http:header:`Accept-Language` to order translations for unauthenticated users.
* Add option to directly approve suggestions with :ref:`reviews` workflow.
* One-click removal of project or component :ref:`notifications`.
* :ref:`api-statistics` now includes character and word counts for more string states.
.. rubric:: Bug fixes
* Fixed creating component within a category by upload.
* Error handling in organizing components and categories.
* Fixed moving categories between projects.
* Fixed formatting of translation memory search results.
* Allow non-breaking space character in :ref:`autofix-html`.
.. rubric:: Compatibility
* :doc:`/formats/apple` exporter now produces UTF-8 encoded files.
* Python 3.12 is now supported, though not recommended, see :ref:`python-deps`.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/104?closed=1>`__.
Weblate 5.1.1
-------------
*Released on October 25th 2023.*
.. rubric:: Improvements
* :ref:`addon-weblate.consistency.languages` now uses a dedicated user for changes.
* Added button for sharing on Fediverse.
* Added validation for VCS integration credentials.
* Reduced overhead of statistics collection.
.. rubric:: Bug fixes
* Added plurals validation when editing string using the API.
* Replacing a file using upload when existing is corrupted.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/106?closed=1>`__.
Weblate 5.1
-----------
*Released on October 16th 2023.*
.. rubric:: New features
* :ref:`mt-yandex-v2` machine translation service.
* :ref:`addon-weblate.autotranslate.autotranslate` and :ref:`auto-translation` are now stored with a dedicated user as an author.
* :ref:`addons` changes to strings are now stored with a dedicated user as an author.
* :ref:`download-multi` can now convert file formats.
* :ref:`workflow-customization` allows to fine-tune localization workflow per language.
.. rubric:: Improvements
* :ref:`project-translation_review` also shows the approval percentage in object listings.
* Project is added to watched upon accepting an invitation.
* Configure VCS API credentials as a Python dict from environment variables.
* Improved accuracy of checks on plural messages.
* Engage page better shows stats.
* Strings which can not be saved to a file no longer block other strings to be written.
* Fixed some API URLs for categorized components.
* Show plural form examples more prominently.
* Highlight whitespace in :ref:`machine-translation`.
* Faster comment and component removal.
* Show disabled save button reason more prominently.
* New string notification can now be triggered for each string.
.. rubric:: Bug fixes
* Improved OCR error handling in :ref:`screenshots`.
* :ref:`autofix` gracefully handle strings from :ref:`multivalue-csv`.
* Occasional crash in :ref:`machine-translation` caching.
* Fixed history listing for entries within a :ref:`category`.
* Fixed editing :guilabel:`Administration` team.
* :ref:`addon-weblate.consistency.languages` add-on could miss some languages.
.. rubric:: Compatibility
* Categories are now included ``weblate://`` repository URLs.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
* Upgrades from older version than 5.0.2 are not supported, please upgrade to 5.0.2 first and then continue in upgrading.
* Dropped support for deprecated insecure configuration of VCS service API keys via _TOKEN/_USERNAME in :file:`settings.py`.
* Weblate now defaults to persistent database connections in :file:`settings_example.py` and Docker.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/100?closed=1>`__.
Weblate 5.0.2
-------------
*Released on September 14th 2023.*
.. rubric:: Improvements
* Translate page performance.
* Search now looks for categories as well.
.. rubric:: Bug fixes
* Rendering of release notes on GitHub.
* Listing of categorized projects.
* Translating a language inside a category.
* Categories sorting.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
* The database upgrade can take considerable time on larger sites due to indexing changes.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/105?closed=1>`__.
Weblate 5.0.1
-------------
*Released on September 10th 2023.*
.. rubric:: New features
* Added :http:get:`/api/component-lists/(str:slug)/components/`.
.. rubric:: Improvements
* Related glossary terms lookup is now faster.
* Logging of failures when creating pull requests.
* History is now loaded faster.
* Added object ``id`` to all :ref:`api` endpoints.
* Better performance of projects with a lot of components.
* Added compatibility redirects for some old URLs.
.. rubric:: Bug fixes
* Creating component within a category.
* Source strings and state display for converted formats.
* Block :ref:`component-edit_template` on formats which do not support it.
* :ref:`check-reused` is no longer triggered for blank strings.
* Performance issues while browsing some categories.
* Fixed GitHub Team and Organization authentication in Docker container.
* GitLab merge requests when using a customized SSH port.
.. rubric:: Compatibility
* `pyahocorasick` dependency has been replaced by `ahocorasick_rs`.
* The default value of :setting:`IP_PROXY_OFFSET` has been changed from 1 to -1.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
* The database upgrade can take considerable time on larger sites due to indexing changes.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/103?closed=1>`__.
Weblate 5.0
-----------
*Released on August 24th 2023.*
.. rubric:: New features
* :doc:`/formats/markdown` support, thanks to Anders Kaplan.
* :ref:`category` can now organize components within a project.
* :doc:`/formats/fluent` now has better syntax checks thanks to Henry Wilkes.
* Inviting users now works with all authentication methods.
* Docker container supports file backed secrets, see :ref:`docker-secrets`.
.. rubric:: Improvements
* Plurals handling in machine translation.
* :ref:`check-same` check now honors placeholders even in the strict mode.
* :ref:`check-reused` is no longer triggered for languages with a single plural form.
* WebP is now supported for :ref:`screenshots`.
* Avoid duplicate notification when a user is subscribed to overlapping scopes.
* OCR support for non-English languages in :ref:`screenshots`.
* :ref:`xliff` now supports displaying source string location.
* Rendering strings with plurals, placeholders or alternative translations.
* User API now includes last sign in date.
* User API token is now hidden for privacy reasons by default.
* Faster adding terms to glossary.
* Better preserve translation on source file change in :doc:`/formats/html` and :doc:`/formats/txt`.
* Added indication of automatic assignment to team listing.
* Users now have to confirm invitations to become team members.
* :ref:`check-formats` can now check all plural forms with the ``strict-format`` flag.
* :doc:`/user/checks` browsing experience.
* Highlight differences in the source string in automatic suggestions.
* Visual diff now better understands compositing characters.
.. rubric:: Bug fixes
* User names handling while committing to Git.
* :ref:`addon-weblate.cleanup.blank` and :ref:`addon-weblate.cleanup.generic` now remove all strings at once.
* Language filtering in :doc:`/devel/reporting`.
* Reduced false positives of :ref:`check-reused` when fixing the translation.
* Fixed caching issues after updating screenshots from the repository.
.. rubric:: Compatibility
* Python 3.9 or newer is now required.
* Several UI URLs have been changed to be able to handle categories.
.. rubric:: Upgrading
Please follow :ref:`generic-upgrade-instructions` in order to perform update.
* There are several changes in :file:`settings_example.py`, most notable is changes in ``CACHES`` and ``SOCIAL_AUTH_PIPELINE``, please adjust your settings accordingly.
* Several previously optional dependencies are now required.
* The database upgrade can take considerable time on larger sites due to structure changes.
`All changes in detail <https://github.com/WeblateOrg/weblate/milestone/99?closed=1>`__.