Description
Symfony version(s) affected
6.1
Description
When we use the command bin/console translation:push
(we use loco provider... but it's the same issue with the others), if the translation files uses the "+intl-icu" suffix (ex: common+intl-icu.fr_FR.xlf), all units are pushed on the provider.
This overwrites the translations that would have been modified on the provider side.
The TranslationPushCommand
does not seem to be able to make the diff between the local translations and the provider translations (local translations domain is common+intl-icu
while provider translations domain is common
).
How to reproduce
1/ Create a translation file using +intl-icu suffix (ex: common+intl-icu.fr_FR.xlf)
2/ Push this domain on your provider with bin/console translation:push
3/ Change a label on you provider interface.
4/ Push this domain again with bin/console translation:push
The modified label at step 3 has been overwritten on the provider.
Possible Solution
No response
Additional Context
At step 4, when all labels are pushed again on the provider, we have this error for each label :
[app] Unable to add new translation key "my_label" to Loco: (status code: "409") "{
"status": 409,
"error": "Asset already exists with ID \"common__my_label\""
}
but the label is still overwritten.