Wikimedia Language engineering/Reports/2017/March

TriangleArrow-Left.svgFebruary 2017 Wikimedia Language engineering monthly report for March 2017 April 2017TriangleArrow-Right.svg

Monthly updates from the Wikimedia Language team focused on technical development of the software they maintain. Names of people assumed to contribute as volunteers are in bold text.


  • Multiple unrelated issues affecting reliability of statistics on Special:CXStats as well as Special:LanguageStats and Special:MessageGroupsStats have been fixed, with more performance improvements for the latter coming in the future.
  • Buttons on Special:Contributions that provide quick access to common ways to contribute now have new style.

Content TranslationEdit

Content Translation allows people to translate Wikipedia articles. Also check out out the newsletter.

About 40 patches were merged this month.

  • Santhosh Thottingal rewrote contribution buttons on Special:Contributions for better code and style. T96200
  • Niklas Laxström fixed the real cause for gaps in Special:CXStats. T158186
  • Niklas Laxström fixed an issue that caused creation of inaccessible drafts. Existing inaccessible drafts are yet to be cleaned up manually. T146450
  • Santhosh Thottingal and Niklas Laxström continued the rewrite of translation view using OOjs UI. T152586
  • Santhosh Thottingal fixed a breakage related to time processing caused by change in MediaWiki core.
  • Niklas Laxström removed usage of deprecated JSON resource loader module.
  • User Fomafix replaced usages of deprecated jQuery methods.
  • Santhosh Thottingal fixed a test failure caused by a change in a Wikipedia template we use for tests.
  • Kartik Mistry fixed an error that was happening when deleting some translation drafts. T161516
  • Bartosz Dziewoński recreated PNG images there had got broken at some point.
  • User Fomafix fixed an inconsistency in JavaScript code.
  • Santhosh Thottingal fixed an error when anonymous users tried to translate. Now a proper error message is shown.

Usage dataEdit

Details Numbers
Articles created (during the month) 11300
Articles created till end of month 187507
Number of new translators (during the month) 1129
Highest number of articles created by one user

(cumulative number till end of the month)

Highest number of translators for a Wikipedia

(cumulative number till end of the month)

4539 (es)
Total number of translators with only 1 published article

(cumulative number till end of the month)

Total number of translators with only 2 published articles

(cumulative number till end of the month)

Total number of translators with only 3 published articles

(cumulative number till end of the month)

Total number of translators with only 4 published articles

(cumulative number till end of the month)

Total number of translators with >= 5 and < 20 published articles

(cumulative number till end of the month)

Total number of translators with >= 20 and < 100 published articles

(cumulative number till end of the month)

Total number of translators with >= 100 published articles

(cumulative number till end of the month)

Articles deleted (during the month) 677



Translate extension allows translation of software interface, manuals, announcements, banners etc. on Wikimedia special projects, and other sites. Translate is part of MLEB.

About 15 patches were merged in this month.

  • David Causse fixed a ElasticSearch backend translation memory update query which was lacking an index condition, possibly causing removal of entries from wrong indices.
  • Niklas Laxström fixed an issue affecting message group statistics: some statistics failed to update due to caching issues for message groups (often translatable pages) with long names. T160565
  • Marco Aurelio made log type names more consistent.
  • Niklas Laxström updated code linting tool codesniffer. This included conversion to PHP short array syntax.
  • User DatGuy added confirmation notifications to Special:ManageTranslatorSandbox. T60706
  • User Glaisher's patch to replace converted edit token usage with csrf token was re-applied now that compatibility issues were resolved, with a follow-up from user Fomafix.
  • User Fomafix also submitted multiple other clean-up patches that simplified code and replaced usages of deprecated code.
  • User TTO updated maintenance script to account for expiring user groups. T160026

Usage dataEdit

  • Translatable pages: Meta 3465 (+98) ; 3351 (+25) ; Commons 605 (+9) [1][2][3]
  • Translate extension is installed on 211 wikis (=) Wikiapiary

Universal Language SelectorEdit

Universal Language Selector provides language choice, input methods and web fonts. It is part of MLEB.

  • Amir Aharoni and Kartik Mistry updated upstream libraries jquery.uls and jquery.webfonts.
  • Amir Aharoni fixed a spelling mistake in code comment.

Other extensionsEdit

Babel (part of MLEB):

  • No changes.

cldr (Common Locale Data Repository) (part of MLEB):

  • Sam Reed updated data to CLDR 31.
  • User Umherirrender updated English strings file to use tabs for indentation.
  • User Dereckson added French name for language Atikamekw (atj).

CleanChanges (part of MLEB):

  • No changes.

LocalisationUpdate (part of MLEB):

  • No changes.


  • No changes.


No MLEB was released this month. Last release was 2017.01. Next release is planned for 2017.04.

MediaWiki core internationalizationEdit

  • Florian Schmidt made it possible to provide translatable documentation for configuration options in extension.json via message keys. T155157
  • Bartosz Dziewoński committed some non-string translations for Western Punjabi (pnb). T157871
  • User TTO changed how $wgDummyLanguageCodes works.
  • Bartosz Dziewoński changed messages names in a parser test to not match real message names to avoid confusions.
  • User Chiefwei updated Chinese language converter conversion tables.
  • Aaron Schulz optimized MessageCache rebuilds to be faster for certain kind of setups. T158084
  • Matthew Flaschen made it possible to add new magic words to jQueryMsg via a hook.
  • Sébastien Santoro added support for Atikamekw (atj) adter translators hade translated enough messages to pass the threshold for inclusion. T137376

Project MilkshakeEdit

Project Milkshake consists of four re-usable jquery internationalization libraries.


  • Niklas Laxström updated CLDR plural rules to 30.0.3.
  • James Forrester replaced jscs+JSHint with eslist with required code style fixes.


  • User hhm0 added information about language Jewish Babylonian Aramaic (tmr).
  • Amir Aharoni added information about languages Guambiano (gum) and Nyungar (nys).


  • No changes.


  • No changes.


See also news page.

  • Raimond Spekking added MediaWiki extensions and skins for translation, and made changes to many others.
  • Niklas Laxström rewrote the new repository handling code (repong) for higher flexibility about output and processing.
  • Timo Tijhof moved Intuition dashboard to a new repository and registered a new Intuition project for translation.
  • Federico Leva converted additional projects to GitHub access management.
  • Antoine Musso and Niklas Laxström improved testing this repository.
  • Roan Kattouw registered MediaWiki extension The Wikipedia Library for translation.
  • Niklas Laxström removed Intuition project Recent Anonymous Activity from translation.
  • Niklas Laxström unified the separate Intuition projects hosted on GitHub under one umbrella project.
  • Niklas Laxström updated ElasticSearch to 5.1.2.
  • Amir Aharoni enabled translations to languages Guambiano (gum) and Nyungar (nys)
  • Niklas Laxström made semi-automated imports of string changes to happen more frequently.
  • There were a couple brief outages caused by HHVM this month and attended by Niklas Laxström.


  • About 85 (=) new users
  • About 350 (+10) translators made about 35.000 (-7.000) edits
  • About 90 (-10) translators reviewed about 9.000 (=) translations

Sources: [4] [5] [6] [7] [8]


  • No changes.

Deployments and other site related updatesEdit

  • ×

Cross team work/requirementsEdit

  • Antoine Musso helped a lot debugging and resolving QUnit test failures in Content Translation.

Team statusEdit