Page MenuHomePhabricator

In Atom/RSS feeds diff changes sometimes is not highlighted
Open, LowPublic

Description

Author: Wiki.Melancholie

Description:
News feed readers and Mozilla Thunderbird e.g. do show a colored revision comparison for Atom/RSS feeds.

But sometimes changed words/content is not shown red¹, see

  1. https://de.wikibooks.org/w/index.php?title=Esperanto&diff=374797&oldid=364671 (where it was¹ red)
  2. https://de.wikibooks.org/w/index.php?title=Esperanto&feed=rss&action=history (where no red color was used¹)
  3. https://de.wikibooks.org/w/index.php?title=Linux-Kompendium&feed=rss&action=history (where style code was marking words red¹)

So, sometimes style="color: red; font-weight: bold; text-decoration: none;" was¹ missing; instead class="diffchange diffchange-inline" is used, but does not work (at least for Thunderbird). This occurs for RSS and Atom.

Notes
¹ T13374 changed the diff color scheme from red/green/yellow to orange/blue/bold.


Version: unspecified
Severity: minor
URL: https://de.wikibooks.org/w/index.php?title=Esperanto&feed=rss&action=history
See also:

Details

Reference
bz13956

Event Timeline

bzimport raised the priority of this task from to Low.Nov 21 2014, 10:12 PM
bzimport set Reference to bz13956.
bzimport added a subscriber: Unknown Object (MLST).

The styles are applied by hardcoding to the feed output by rcApplyDiffStyle() in SpecialRecentchanges.php.

This function is a bit of a hack, and doesn't properly handle multiple classes (eg class="diffchange diffchange-inline"), which are now produced due to recent changes to the diff engine. (But not _always_ produced on Wikipedia, since we currently have a mix of wikidiff2 versions installed.)

The function should be updated to handle multiple classes, either with another hack or by rewriting it to use proper DOM functions or such.

In T15956#189035, @brion wrote:

The function should be updated to handle multiple classes, either with another hack or by rewriting it to use proper DOM functions or such.

That is T36801: Function applyDiffStyle uses regexes which do not detect CSS classes appropriately.

He7d3r renamed this task from In Atom/RSS feeds a changed content sometimes is not displayed red to In Atom/RSS feeds diff changes sometimes is not highlighted.May 24 2015, 7:17 PM
He7d3r updated the task description. (Show Details)