Page MenuHomePhabricator

[Task] Split Diff/Patching code to allow constructing other Differs/Patchers
Closed, ResolvedPublic

Description

"EntityDiff makes assumptions that all entities have aliases, labels, descriptions and claims. It is generally not well designed. claim is used as key for statements.

Creating a well designed alternative from ground up might be the way to go."

https://github.com/wmde/WikibaseDataModel/issues/209

Related Objects

StatusSubtypeAssignedTask
OpenNone
OpenNone
DuplicateNone
OpenFeatureNone
OpenFeatureNone
DuplicateNone
ResolvedNone
ResolvedNone
ResolvedNone
DuplicateNone
InvalidNone
InvalidNone
InvalidLydia_Pintscher
Resolveddaniel
ResolvedTobi_WMDE_SW
Resolvedthiemowmde
OpenNone
OpenNone
StalledNone
OpenNone
ResolvedAddshore
Resolvedthiemowmde
ResolvedAddshore
Resolvedthiemowmde
ResolvedJeroenDeDauw
Resolvedthiemowmde
ResolvedBene
ResolvedNone
ResolvedBene
DeclinedBene

Event Timeline

Lucie raised the priority of this task from to Needs Triage.
Lucie updated the task description. (Show Details)
Lucie changed Security from none to None.
Lucie subscribed.
thiemowmde renamed this task from Clean up EntityDiff and ItemDiff to [Task] Clean up EntityDiff and ItemDiff.Sep 10 2015, 4:35 PM
thiemowmde triaged this task as Medium priority.
thiemowmde added subscribers: Bene, thiemowmde.
Bene raised the priority of this task from Medium to High.Feb 29 2016, 4:32 PM
Bene moved this task from ready to go to consider for next sprint on the Wikidata board.

There are also some more issues, for example should patchers not act on an array level but directly on the objects.

Bene renamed this task from [Task] Clean up EntityDiff and ItemDiff to [Task] Clean up Diff and Patching code.Feb 29 2016, 4:33 PM
Bene edited projects, added Wikibase-DataModel-Services; removed Wikibase-DataModel.

This first patch should make it more obvious what this ticket is about: https://github.com/wmde/WikibaseDataModelServices/pull/120. Still work in progress at the moment.

Patches that do nothing but adding tests. Can you merge these first, please?

With these tests in place, the actual refactoring is done in these patches (in suggested review order):

Optional:

  • https://github.com/wmde/Diff/pull/65 is an optional enhancement that would make the code introduced in patch #120 quite a bit cleaner. But #120 should be reviewed and merged without waiting for this dependency.
thiemowmde renamed this task from [Task] Clean up Diff and Patching code to [Task] Split Diff/Patching code to allow constructing other Differs/Patchers.Apr 12 2016, 12:54 PM

I rearranged my comment T78298#2133392 to make this as easy as I can for reviewers.

Only the optional patch is left open, so I guess we can do a WBDMS release and be done :)

All except the Diff change are merged.