The release notes summarize the changes introduced over the previous week.
New Features & Improvements
- XLIFF 1.2 and 2.0 import settings now let you choose the target language code format used in the completed file (only in API)
- Strings webhooks can now be filtered by delivery status (success or failed).
- Added a "Mark all as uncompleted" button for Strings job locales.
- The WordPress plugin now supports configuring custom Gutenberg block and shortcode attributes through a PHP filter hook, making it easier to keep configuration consistent across multiple sites.
- The Sanity plugin now supports Sanity Studio v6.
- Orchestrator: added public API endpoints to read and edit a workflow revision's trigger, tasks, and dependencies directly, without creating a whole new revision.
- Orchestrator: workflow executions can now be filtered by the Project or Job UID found in the trigger payload.
Bug Fixes
- Fixed: uploading a custom logo for a Phrase Portal could fail with an error.
- Fixed: opening a dataset in Custom AI could show an error instead of its statistics.
- Fixed: the recleaning view in Custom AI could fail to load when opened directly via its link.
- Fixed: machine translation requests containing certain special characters could fail unexpectedly.
- Fixed: a failed style guide upgrade could delete the style guide's current file.
- Fixed: style guide file-download and rules-export API endpoints were missing from the public API documentation.
- Fixed: the "Last modified" date on the Assets list didn't update after uploading a new style guide version.
- Fixed: a new rule could be saved to "All groups" instead of the content group it was created from.
- Fixed: linking a content group to a project could be blocked by outdated style guide language settings.
- Fixed: a guest with rights to modify other users' translation memories could get an access-denied error when saving an edit.
- Fixed: a term base match containing a dash could be incorrectly flagged as missing in QA checks.
- Fixed: fuzzy term base matches with different capitalization could be incorrectly flagged as missing terms.
- Fixed: project managers with rights to modify other users' translation memories couldn't edit a TM's languages.
- Fixed: translation memory match prioritization by metadata could select a match that didn't actually match the configured priority.
- Fixed: adding a language to a term base could be blocked for project managers lacking an unrelated user-management permission.
- Fixed: WordPress plain text custom fields could be overwritten with the content of an adjacent WYSIWYG field after translation write-back.
- Fixed: Optimizely export failures showed a generic error message instead of the specific cause.
- Fixed: the strikethrough rich text mark could be lost when content was exported from Phrase back to Contentful.
- Fixed: creating an Optimizely connector no longer requires a Host value that has no effect on the connection.
- Fixed: listing a very large GitHub subfolder structure could cause a crash.
- Fixed: the SharePoint connector could fail to resolve a site when listing files.
- Fixed: the Dropbox connector could return an error when Dropbox returned an unexpected response format.
- Fixed: an error that could occur when opening a Git repository while listing files with the Git connector.
- Fixed: an extra newline could be inserted into translated text after processing instructions in certain file formats (e.g. IDML).
- Fixed: translation history could be missing for some segments in the CAT editor's Changes panel when a project's workflow skipped a step level.
- Fixed: translated text in PPTX files with embedded think-cell elements could revert to the source language in the exported file.
- Fixed: projects could be hidden from the project list for buyer-restricted project managers after a vendor relationship was recreated.
- Fixed: creating a job with an unrecognized import file format, or a vendor's own custom file type in a shared project, could return an error and leave the job stuck in a running state.
- Fixed: XLIFF 1.2 import settings (such as saving confirmed segments to translation memory) could be ignored for files with extensions not recognized as XLIFF, such as .TXLF.
- Fixed: some validation errors (such as restrictions on vendor edits or invalid project owner roles) showed only a generic "Bad Request" message instead of the specific reason.
- Fixed: duplicating a key reset each locale's translation status to Verified instead of preserving the original status.
- Fixed: unchecking "Use pre-translation" when adding a new language could still trigger pre-translation.
- Fixed: the editor could incorrectly show a linked child key's translation as untranslated after a failed background request.
- Fixed: Repo Sync for Bitbucket could fail to find the configuration file for branches with a forward slash in the name.
- Fixed: connecting a new Bitbucket repository sync could fail with an error during authorization.
- Fixed: the CLI's phrase pull --cache command could not use cached responses, always re-downloading the full file.
- Fixed: removing the last annotation from a job could fail with an error.
- Fixed: searching for project members could spin indefinitely instead of showing an access-denied message when the user lacked permission.
- Fixed: long branch names on the Branches page weren't truncated with an ellipsis.
- Fixed: calculating an order price for large Gengo orders could time out instead of completing.
- Fixed: uploading very large files to Atlas could cause it to crash.
- Fixed: content group reference endpoints (linking or unlinking objects to a content group) were missing from the public API documentation.
- Fixed: inconsistent capitalization of "Content groups" in the sidebar.