- ๐บ๐ธUnited States smustgrave
Yea but without a clear summary hard to review the code as it wasnโt clear what the we being accomplished
- ๐บ๐ธUnited States smustgrave
Can the summary be updated with whatโs being proposed? Do we want a page with all revisions loaded? What if itโs 1000s of revisions
- ๐ณ๐ฟNew Zealand quietone
The Ideas project is being deprecated. This issue is moved to the Drupal project. Check that the selected component is correct. Also, add the relevant tags, especially any 'needs manager review' tags.
Changing to the standard issue template โ would also help other contributors.
- ๐ฆ๐บAustralia acbramley
This is green now.
Want to get a review on the code changes before going ahead with a full IS update + CR.
- @acbramley opened merge request.
- ๐ฆ๐บAustralia acbramley
After debugging this more it's clear that the current code is definitely masking some pretty weird issues.
E.g set up the following:
1. Install standard
2. Install content_translation module
3. Add another language (e.g Dutch)
4. Edit Basic page content type and mark it translatable
5. Create a node, then translate it to the new language, adding a revision log of "create LANGUAGE revision".At this point this will create 2 new revisions - one for English and one for Dutch. The English one will be marked with
revision_translation_affected = NULL
The node_revision table will have 2 records, but node_field_revision will have 3. 2 of those will be for vid 2, one for each language. Vid 2 for english will have values copied from vid 1 (i.e created/changed dates).
Since the revision_log field is not translateable, the node_revision table will have "create LANGUAGE revision" for vid 2, which is the default revision for english.6. Go to node/1/revisions (i.e the English revisions page). You'll see 1 revision marked as current, but this is actually revision 1. You won't see a revision log message, which IMO is incorrect. The reason this is incorrectly shown as the current revision is because of this code:
// We treat also the latest translation-affecting revision as current // revision, if it was the default revision, as its values for the // current language will be the same of the current default revision in // this case. $is_current_revision = $revision->isDefaultRevision() || (!$current_revision_displayed && $revision->wasDefaultRevision());
- ๐ฆ๐บAustralia acbramley
These conditions were added in #2465907: Node revision UI reverts multiple languages when only one language should be reverted โ so it will be crucial we don't regress on that bug
Commit https://git.drupalcode.org/project/drupal/-/commit/7940793ae0bbfdb64fb5e...
- ๐ฆ๐บAustralia acbramley
Added related/dupe issues for core and Diff. I think the main issue here is the
isRevisionTranslationAffected
check.The generic revision UI also has this same check in VersionHistoryController::loadRevisions. Whatever fix we do for Node should apply there too.
Agreed that we should keep this one simple and potentially add a language filter in another issue if needed.
- ๐ฌ๐งUnited Kingdom catch
I think we should do this.
A language selector would allow for a closer equivalent to the current behaviour for people that need it, but the page just does not properly work as it currently is, so I think we could open a separate issue to add that, and keep things simple here.
- ๐ณ๐ฟNew Zealand quietone
The Ideas project is being deprecated. This issue is moved to the Drupal project. Check that the selected component is correct. Also, add the relevant tags, especially any 'needs manager review' tags.