Page MenuHomePhabricator

Improve diff to handle splitting a paragraph
Closed, ResolvedPublic


A portion of this task is being developed by WMDE-TechWish Until the following task T146781 is resolved, it may not be a good idea to claim this project.

Proposed in Community-Wishlist-Survey-2016. Received 63 support votes, and ranked #13 out of 265 proposals. View full proposal with discussion and votes here.


Minor split of a paragraph create large diffs that are very hard to read: example.

Who would benefit

All people reviewing articles, but also all those newcomers that wait for their edits to be approved. Less work doing review = quicker reviews.

Proposed solution

Either somehow improve the diffing algorithm or allow users to click on different sections and re-diff them... Or maybe allow user to change wikicode on both sides and re-run diff on new wikicode.

Technical details

Time, expertise and skills required

  • e.g. 2-3 weeks, advanced contributor, javascript, css, etc

Suitable for

  • e.g. Hackathon, GSOC, Outreachy, etc.



Related links

Event Timeline

This task was proposed in the Community-Wishlist-Survey-2016 and in its current state needs owner. Wikimedia is participating in Google Summer of Code 2017 and Outreachy Round 14. To the subscribers -- would this task or a portion of it be a good fit for either of these programs? If so, would you be willing to help mentor this project? Remember, each outreach project requires a minimum of one primary mentor, and co-mentor.

@jkroll Is it fair to say that T146781: Show changes in moved text chunks (C++) is similar to this task?

The diff engine is implemented in Wikidiff2, which is a PHP extension written in C++. My work on T146781: Show changes in moved text chunks (C++) involves that same codebase. If you like, I will discuss with my team at WMDE whether we can implement this task next.

@jkroll thanks, Johannes for your reply! I've updated the task description accordingly. Whenever you're done resolving the task, could you comment on the final status here as well?

MusikAnimal assigned this task to tstarling.
MusikAnimal added a project: Better-Diffs-2023.

This was solved by @tstarling and Community-Tech as part of the Better-Diffs-2023 project. That project still isn't officially over (we've got a few lingering bugs here and there to fix), but this task I think can safely be resolved. The example diff looks pretty easy to interpret now :)

If anyone has further feedback, please share it with us at