Skip to content

Unreal Engine PO files pipeline support #17357

@3dever

Description

@3dever

Describe the issue

I am using Weblate together with Unreal Engine via Git, and in general this setup works well. However, there is one critical issue in the workflow.

After connecting PO files to Weblate, translations can be edited, exported, and committed to the repository without problems.
But whenever I run Gather Text in Unreal Engine (which is required), Unreal rewrites all PO files in a slightly different format. After that, when I run Update / Merge in Weblate (repository maintenance), it always results in merge conflicts.

Even if I always commit changes coming from Weblate, the problem still occurs as soon as Unreal adds new strings or regenerates the PO files.
And also I dont think that fixing it mannualy each time with git console - is a good pipeline.

Will aprecciate any suggestions of fixes, since it might be a great localization solution for Unreal.

I already tried

  • I've read and searched the documentation.
  • I've searched for similar filed issues in this repository.

Steps to reproduce the behavior

  1. Connect Weblate with Unreal engine's PO files via Git
  2. Change something in Weblate
  3. Gather new texts in Unreal Engine
  4. Try to Update it with Rebase or merge

Expected behavior

It will be nice to find a good pipeline or improve that.

Screenshots

Log:
Rebasing (1/15)
Auto-merging Content/Localization/LoreNotes/ru/LoreNotes.po
CONFLICT (content): Merge conflict in Content/Localization/LoreNotes/ru/LoreNotes.po
error: could not apply ef3bf1398b5... Translated using Weblate
hint: Resolve all conflicts manually, mark them as resolved with
hint: "git add/rm <conflicted_files>", then run "git rebase --continue".
hint: You can instead skip this commit: run "git rebase --skip".
hint: To abort and get back to the state before "git rebase", run "git rebase --abort".
hint: Disable this message with "git config set advice.mergeConflict false"
Could not apply ef3bf1398b5... # Translated using Weblate

Exception traceback

How do you run Weblate?

Docker container

Weblate versions

No response

Weblate deploy checks

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions