Page MenuHomePhabricator

[Refactor] Rebuild methods in ve.dm.MWGroupReferences to work with `listIndex` instead of `listKey`
Closed, ResolvedPublic

Description

Context

At some point we introduced ve.dm.MWGroupReferences to provide helper methods that can be used get footnote numbers or the list of references in order. These methods are used in several places of the code to render UI elements.

When we want to move away from listKey but give listIndex more responsibility we need to make sure that these methods can also work based on that property.

Task
  • Evaluate how we can make sure that
  • getTopLevelKeysInReflistOrder
  • getAllRefsInReflistOrder
  • getIndexLabel
  • getSubrefs

can be used also with a listIndex.

  • Add fallbacks for using listKey to track if we're missing something.

Event Timeline

Change #1236764 had a related patch set uploaded (by WMDE-Fisch; author: WMDE-Fisch):

[mediawiki/extensions/Cite@master] [WIP] Add listIndex support for getAllRefsInReflistOrderByIndex

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

Change #1241035 had a related patch set uploaded (by WMDE-Fisch; author: WMDE-Fisch):

[mediawiki/extensions/Cite@master] VE: Remove some code duplication in MWGroupReferences

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

Change #1241035 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] VE: Remove some code duplication in MWGroupReferences

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

Change #1248767 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] [WIP] Change ve.dm.MWGroupReferences to work with listIndex

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

Change #1249317 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] Update MWGroupReferences test to compare numeric listIndex

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

Change #1249317 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Update MWGroupReferences test to compare numeric listIndex

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

Change #1249935 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] Small fixes to listIndex-related JSDocs and test setups

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

Change #1249941 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] Add listIndex-based helper methods to MWGroupReferences class

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

Change #1249935 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Small fixes to listIndex-related JSDocs and test setups

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

Change #1249941 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Add listIndex-based helper methods to MWGroupReferences class

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

Change #1250522 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] Replace cached ref label lookup with dynamic code

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

Change #1251042 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] Fix incomplete sorting in ve.dm.MWGroupReferences class

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

Change #1251042 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Fix incomplete sorting in ve.dm.MWGroupReferences class

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

Change #1250522 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Replace cached ref label lookup with dynamic code

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

Change #1251925 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[VisualEditor/VisualEditor@master] Alternative listIndex accessors in ve.dm.InternalListNodeGroup

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

Change #1251926 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[VisualEditor/VisualEditor@master] Drop dead code in ve.dm.InternalListNodeGroup.getFirstNode

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

Change #1251925 merged by jenkins-bot:

[VisualEditor/VisualEditor@master] Alternative listIndex accessors in ve.dm.InternalListNodeGroup

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

Change #1251926 merged by jenkins-bot:

[VisualEditor/VisualEditor@master] Drop dead code in ve.dm.InternalListNodeGroup.getFirstNode

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

Change #1254888 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] Remove deprecated ve.dm.MWDocumentReferences.getIndexLabel

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

Change #1254901 had a related patch set uploaded (by Esanders; author: Esanders):

[mediawiki/extensions/VisualEditor@master] Update VE core submodule to master (7585187b3)

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

Change #1254907 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] Fix incomplete ve.dm.MWReferenceModel.listGroup initialization

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

Change #1254901 merged by jenkins-bot:

[mediawiki/extensions/VisualEditor@master] Update VE core submodule to master (7585187b3)

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

Change #1254888 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Remove deprecated ve.dm.MWDocumentReferences.getIndexLabel

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

Change #1254907 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Fix incomplete ve.dm.MWReferenceModel.listGroup initialization

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

Change #1248767 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Change ve.dm.MWGroupReferences to work with listIndex

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

Change #1270943 had a related patch set uploaded (by Thiemo Kreuz (WMDE); author: Thiemo Kreuz (WMDE)):

[mediawiki/extensions/Cite@master] Change more code to use listIndex instead of listKey

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

Change #1270943 merged by jenkins-bot:

[mediawiki/extensions/Cite@master] Change more code to use listIndex instead of listKey

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