Page MenuHomePhabricator

Problems with deleting/cutting/moving references in VisualEditor
Open, MediumPublic

Details

Related Gerrit Patches:
mediawiki/extensions/VisualEditor : wmf/1.34.0-wmf.25Update VE core submodule to 2ffb699eb (TreeModifier fixes)
mediawiki/extensions/VisualEditor : REL1_34Update VE core submodule to 74bcce48e (TreeModifier fixes)
VisualEditor/VisualEditor : wmf/1.34.0-wmf.25TreeModifier: Ignore more attributes when validating linear data
VisualEditor/VisualEditor : REL1_34TreeModifier: Ignore more attributes when validating linear data
mediawiki/extensions/VisualEditor : masterUpdate VE core submodule to master (2c8e48194)
VisualEditor/VisualEditor : masterTreeModifier: Ignore more attributes when validating linear data

Related Objects

Event Timeline

matmarex created this task.Oct 2 2019, 10:37 PM
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptOct 2 2019, 10:37 PM
Titore added a subscriber: Titore.Oct 2 2019, 10:52 PM
dchan added a subscriber: dchan.Oct 6 2019, 3:18 PM

On investigation, all subtasks are failing for precisely the same reason, so we should probably fold them into this task.

Change 541088 had a related patch set uploaded (by Divec; owner: Divec):
[VisualEditor/VisualEditor@master] TreeModifier: Ignore more attributes when validating linear data

https://gerrit.wikimedia.org/r/541088

dchan added a comment.Oct 6 2019, 3:49 PM

Change 541088 appears to fix every failure case given in the subtasks. (I loaded them all up on the live sites, in-browser patched the code, and cofirmed they no longer fail).

matmarex triaged this task as Unbreak Now! priority.Oct 7 2019, 12:10 PM
matmarex moved this task from To Triage to In current Tech/News draft on the User-notice board.

Change 541088 merged by jenkins-bot:
[VisualEditor/VisualEditor@master] TreeModifier: Ignore more attributes when validating linear data

https://gerrit.wikimedia.org/r/541088

Change 541272 had a related patch set uploaded (by Bartosz Dziewoński; owner: Bartosz Dziewoński):
[mediawiki/extensions/VisualEditor@master] Update VE core submodule to master (2c8e48194)

https://gerrit.wikimedia.org/r/541272

Curses, I'll have gone to the pub by then :) any idea what caused the problem(s) originally?

Change 541272 merged by Bartosz Dziewoński:
[mediawiki/extensions/VisualEditor@master] Update VE core submodule to master (2c8e48194)

https://gerrit.wikimedia.org/r/541272

Change 541299 had a related patch set uploaded (by Bartosz Dziewoński; owner: Divec):
[VisualEditor/VisualEditor@wmf/1.34.0-wmf.25] TreeModifier: Ignore more attributes when validating linear data

https://gerrit.wikimedia.org/r/541299

Change 541301 had a related patch set uploaded (by Bartosz Dziewoński; owner: Divec):
[VisualEditor/VisualEditor@REL1_34] TreeModifier: Ignore more attributes when validating linear data

https://gerrit.wikimedia.org/r/541301

Change 541303 had a related patch set uploaded (by Bartosz Dziewoński; owner: Bartosz Dziewoński):
[mediawiki/extensions/VisualEditor@wmf/1.34.0-wmf.25] Update VE core submodule to 2ffb699eb (TreeModifier fixes)

https://gerrit.wikimedia.org/r/541303

Change 541304 had a related patch set uploaded (by Bartosz Dziewoński; owner: Bartosz Dziewoński):
[mediawiki/extensions/VisualEditor@REL1_34] Update VE core submodule to 74bcce48e (TreeModifier fixes)

https://gerrit.wikimedia.org/r/541304

These are the backports for 1.34.0-wmf.25 (Wikimedia wikis version) and REL1_34 (upcoming stable MediaWiki release).

Change 541301 merged by jenkins-bot:
[VisualEditor/VisualEditor@REL1_34] TreeModifier: Ignore more attributes when validating linear data

https://gerrit.wikimedia.org/r/541301

Change 541299 merged by jenkins-bot:
[VisualEditor/VisualEditor@wmf/1.34.0-wmf.25] TreeModifier: Ignore more attributes when validating linear data

https://gerrit.wikimedia.org/r/541299

RoySmith removed a subscriber: RoySmith.Oct 7 2019, 4:49 PM

Change 541304 merged by jenkins-bot:
[mediawiki/extensions/VisualEditor@REL1_34] Update VE core submodule to 74bcce48e (TreeModifier fixes)

https://gerrit.wikimedia.org/r/541304

Krinkle removed a subscriber: Krinkle.Oct 7 2019, 5:51 PM

Change 541303 merged by jenkins-bot:
[mediawiki/extensions/VisualEditor@wmf/1.34.0-wmf.25] Update VE core submodule to 2ffb699eb (TreeModifier fixes)

https://gerrit.wikimedia.org/r/541303

Mentioned in SAL (#wikimedia-operations) [2019-10-07T18:25:08Z] <urbanecm@deploy1001> Synchronized php-1.34.0-wmf.25/extensions/VisualEditor/: SWAT: 011b6eb: 11033b7: Update VE core submodule to 2ffb699eb (TreeModifier fixes), T234489, T234742 + ve.ui.MWDefinedTransclusionContextItem: Fix handling of template names (T234817) (duration: 00m 53s)

This problem is now fixed on all Wikimedia wikis.

Curses, I'll have gone to the pub by then :) any idea what caused the problem(s) originally?

We've recently rewritten (see T215567) a part of the "transaction processor", the system that remembers the changes you make in the document (so that you can undo/redo them, and so they can be restored in case of crashes). It turns out that the Cite extension (responsible for handling references) generates transactions in a slightly different way than we thought, which broke some assumptions in the new code and caused this problem.

Titore added a comment.Oct 7 2019, 7:05 PM

Looks great, overall. I can still reproduce step 3 from T234142 with the following error:

load.php?lang=en&modules=ext.visualEditor.core&skin=vector&version=1c46j:145 Uncaught Error: Remover and inserter unexpectedly diverged
    at VeDmTreeModifier.ve.dm.TreeModifier.processRetain (load.php?lang=en&modules=ext.visualEditor.core&skin=vector&version=1c46j:145)
    at VeDmTreeModifier.ve.dm.TreeModifier.processLinearOperation (load.php?lang=en&modules=ext.visualEditor.core&skin=vector&version=1c46j:143)
    at VeDmTreeModifier.ve.dm.TreeModifier.calculateTreeOperations (load.php?lang=en&modules=ext.visualEditor.core&skin=vector&version=1c46j:142)
    at VeDmTreeModifier.ve.dm.TreeModifier.process (load.php?lang=en&modules=ext.visualEditor.core&skin=vector&version=1c46j:142)
    at VeDmTransactionProcessor.ve.dm.TransactionProcessor.process (load.php?lang=en&modules=ext.visualEditor.core&skin=vector&version=1c46j:88)
    at VeDmDocument.ve.dm.Document.commit (load.php?lang=en&modules=ext.visualEditor.core&skin=vector&version=1c46j:209)
    at VeDmSurface.ve.dm.Surface.changeInternal (load.php?lang=en&modules=ext.visualEditor.core&skin=vector&version=1c46j:170)
    at VeDmSurface.ve.dm.Surface.change (load.php?lang=en&modules=ext.visualEditor.core&skin=vector&version=1c46j:170)
    at VeDmSurfaceFragment.ve.dm.SurfaceFragment.change (load.php?lang=en&modules=ext.visualEditor.core&skin=vector&version=1c46j:180)
    at VeDmSurfaceFragment.ve.dm.SurfaceFragment.delete (load.php?lang=en&modules=ext.visualEditor.core&skin=vector&version=1c46j:192)
Ryasmeen added a subscriber: Ryasmeen.EditedOct 7 2019, 7:37 PM

I am still getting the following error with moving (drag-drop) and cutting references.
Check the screenshot for the error:


I am still getting the following error with moving (drag-drop) and cutting references.

Which page is this on? Can you reproduce on live?

@Ryasmeen Beta might not have updated itself yet when you tested; it seems to be working right now for me.

The other issue reported by @Titore is real though, easiest way to reproduce is to delete a reference together with the word preceding it (but it must not be at the beginning of a paragraph).

@matmarex: You're right. It was happening couple hours ago, but not anymore. Guess it was not updated at that point.

(That problem is now filed as T234881)

Would it be possible to have an description of the issue(s), so that community members can know what's going on? Thanks!

@Trizek-WMF The original issue (which should be resolved now) was that if you deleted, cut or moved a reference, the editor would stop responding to user actions.

The second issue (T234881, not resolved yet but in progress) is that if you delete, cut or move some text followed by a "node" (e.g. reference, comment, inline image), the editor stops responding to user actions.

The second issue should also be resolved now.

It also appears when selecting text that includes a Citation in VE and pressing delete freezes VE

Apologies if I'm out of touch with recent events, but it seems it's still impossible to copy/cut/paste refs--and the text containing them--in VE. As of Right Now. Cheers, ~~~~

@Waddie96 @SerialNumber54129 I don't see this problem any more right now. I just tested on https://en.wikipedia.org/wiki/The_Fighting_Temeraire?veaction=edit and I was able to cut, paste or delete references, paragraphs, or even the entire article, and the editor was still responsive and the "Review your changes" dialog showed the expected results.

If you still see this problem, can you say which article and which reference in it are affected, and describe anything else you do to trigger it?

A new task T235959 was filed with the details of another case where deleting/cutting/moving a reference still doesn't work.

@Waddie96 @SerialNumber54129 I don't see this problem any more right now. I just tested on https://en.wikipedia.org/wiki/The_Fighting_Temeraire?veaction=edit and I was able to cut, paste or delete references, paragraphs, or even the entire article, and the editor was still responsive and the "Review your changes" dialog showed the expected results.
If you still see this problem, can you say which article and which reference in it are affected, and describe anything else you do to trigger it?

@matmarex I can confirm that the issue no longer occurs.

matmarex moved this task from Inbox to High Priority on the Editing QA board.Oct 22 2019, 11:44 AM
Ryasmeen edited projects, added Verified; removed Editing QA.
Ammarpad lowered the priority of this task from Unbreak Now! to Medium.Oct 24 2019, 4:26 PM