Page MenuHomePhabricator

Provide source code diff view for Vector Graphics files (SVG) for file overwrites
Open, LowestPublic

Description

Individual changes to vector files (SVG) are often difficult to trace back to the relevant lines of the source code. A diff view would enable content curators to quickly identify what exactly has been changed and make further adaptations as necessary.

Event Timeline

Currently

  1. User A uploads an .svg
  2. User B uploads a new version of the file as a new revision
  3. Another user wants to compare the difference in source code between the two files, and have to compare this manually, by having multiple tabs open

Wanted
A diff-comparer for vector files to see the difference between file versions.

Aklapper renamed this task from vector file source code diff view for file overwrites to Provide source code diff view for Vector Graphics files (SVG) for file overwrites.Dec 27 2016, 3:28 PM
Aklapper triaged this task as Lowest priority.

I don't see anything specific about Wikimedia Commons in this task. Hence removing the Commons tag. If there is, please elaborate.

I don't see anything specific about Wikimedia Commons in this task. Hence removing the Commons tag. If there is, please elaborate.

Commons is for tracking tasks which may affect or interest the users on Commons. Since most files are located on Commons, this is of high interest of the Commons community, and therefore the tag should on this task. The Commons is not a group of devs. but merly a tracking project for the Commons community.

[offtopic] @Josve05a: Then its project description is maybe misleading ("if the task is not actually specific to Commons"), as this task would provide functionality on any wiki / site.

Needs a design. Where would the diffs be linked from?

In the reupload log, how about a diff link in the parentheses with "thank"?

reupload log 2.png (30×834 px, 11 KB)

Watchlist/RC

reupload watchlist.png (77×737 px, 15 KB)

File history, how about delinking the date/time and adding an action list in the blank space below it?

reupload file history.png (109×956 px, 24 KB)

When a reupload is done, there is a null edit to the description page. The current diff page for that null edit just says that nothing changed, which isn't very helpful. The log_search table has associated_rev_id so it is possible to fetch upload details from the logging table in the context of a null edit diff page without a schema change.

Diff page mockup showing the old and new image side by side, and then the SVG source diff afterwards:

reupload diff.png (699×961 px, 117 KB)

Maybe better to have a selector on the diff page, like the inline mode switcher, so that these diffs will not be shown on a default view.

@tstarling For the file history it would be nice if there was a way to select two files and hit a "diff" or "compare" button, similar to the revision history for regular pages. Intermediate file revisions would be ignored, it would just be showing a diff of whichever two versions are chosen.