Problem/Motivation
When reverting a (node) revision, the user can chose between reverting only the translatable fields or all fields. While I'm still not happy about the whole kind-of-per-language revision UI, it's especially bad when using paragraphs or another embedded entity, I guess field_collection works basically the same way. IEF when using entity reference revision fields the same I guess.
1. If you chose to only revert this translation, then nothing happens, because the paragraph/reference field is not translatable and the whole field has been skipped.
2. If you revert all fields, then the the reference is reverted back to that old reference, which updates this translation but also reverts all translations back to that state, including deleting translations that were added after that.
Proposed resolution
Not sure, maybe add an event or hook, so that for example entity_reference_revisions can replicate what \Drupal\node\Form\NodeRevisionRevertTranslationForm::prepareRevertedRevision() did for any referenced paragraph.
Comments
Comment #2
plachPossibly related issues: #2924724: Add an API to create a new revision correctly handling multilingual pending revisions and #2878556: Ensure that changes to untranslatable fields affect only one translation in pending revisions.
Comment #4
BerdirComment #5
BerdirThis is now a duplicate of #2960253: [meta] Allow Paragraphs widget/field and similar use cases to to be considered translatable combined with the related ERR/Paragraphs patches, the paragraphs patch now also confirms test coverage that reverting revisions just works :)