WikidataBuilder has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/297759

Change subject: New Wikidata Build - 2016-07-07T10:00:01+0000
......................................................................

New Wikidata Build - 2016-07-07T10:00:01+0000

Change-Id: I3b84706c39f7aa10b134ba3a61d2813294d04d8d
---
M composer.lock
M extensions/Wikibase/client/i18n/frp.json
M extensions/Wikibase/client/i18n/nl.json
M extensions/Wikibase/client/i18n/wuu.json
M extensions/Wikibase/client/i18n/zgh.json
M extensions/Wikibase/composer.json
M extensions/Wikibase/lib/i18n/ko.json
M extensions/Wikibase/lib/includes/Formatters/HtmlTimeFormatter.php
M extensions/Wikibase/lib/tests/phpunit/Formatters/HtmlTimeFormatterTest.php
M extensions/Wikibase/repo/i18n/fa.json
M extensions/Wikibase/repo/i18n/frp.json
M extensions/Wikibase/repo/i18n/ka.json
M extensions/Wikibase/repo/i18n/pl.json
M extensions/Wikibase/repo/i18n/zgh.json
M extensions/Wikibase/repo/includes/Parsers/MwTimeIsoParser.php
M extensions/Wikibase/repo/includes/Parsers/TimeParserFactory.php
M 
extensions/Wikibase/repo/tests/phpunit/includes/Parsers/MwTimeIsoParserTest.php
M 
extensions/Wikibase/repo/tests/phpunit/includes/Parsers/TimeParserFactoryTest.php
M 
extensions/Wikibase/view/resources/jquery/wikibase/jquery.wikibase.entityselector.js
M 
extensions/Wikibase/view/resources/jquery/wikibase/jquery.wikibase.sitelinkgroupview.js
M extensions/Wikibase/view/resources/wikibase/view/ViewFactory.js
M 
extensions/Wikibase/view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinkgroupview.tests.js
M vendor/composer/installed.json
23 files changed, 206 insertions(+), 170 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikidata 
refs/changes/59/297759/1

diff --git a/composer.lock b/composer.lock
index 98d5a8f..cb8eb94 100644
--- a/composer.lock
+++ b/composer.lock
@@ -1572,12 +1572,12 @@
             "source": {
                 "type": "git",
                 "url": 
"https://github.com/wikimedia/mediawiki-extensions-Wikibase.git";,
-                "reference": "322a6a96762cb42310c9a6848d4b08a0445b77e8"
+                "reference": "aff01e1b44fc1a6b2139d48b6d9d4b5afa75e97d"
             },
             "dist": {
                 "type": "zip",
-                "url": 
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/322a6a96762cb42310c9a6848d4b08a0445b77e8";,
-                "reference": "322a6a96762cb42310c9a6848d4b08a0445b77e8",
+                "url": 
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/aff01e1b44fc1a6b2139d48b6d9d4b5afa75e97d";,
+                "reference": "aff01e1b44fc1a6b2139d48b6d9d4b5afa75e97d",
                 "shasum": ""
             },
             "require": {
@@ -1601,7 +1601,6 @@
                 "wikibase/internal-serialization": "~2.3",
                 "wikibase/javascript-api": "~1.1",
                 "wikibase/serialization-javascript": "~2.0.5",
-                "wikimedia/assert": "~0.2.2",
                 "wikimedia/purtle": "~1.0"
             },
             "conflict": {
@@ -1650,7 +1649,7 @@
                 "wikibaserepo",
                 "wikidata"
             ],
-            "time": "2016-07-06 08:20:46"
+            "time": "2016-07-07 09:23:42"
         },
         {
             "name": "wikibase/wikimedia-badges",
diff --git a/extensions/Wikibase/client/i18n/frp.json 
b/extensions/Wikibase/client/i18n/frp.json
index 9c213e9..a2c1c67 100644
--- a/extensions/Wikibase/client/i18n/frp.json
+++ b/extensions/Wikibase/client/i18n/frp.json
@@ -18,5 +18,5 @@
        "wikibase-rc-show-wikidata-pref": "Montrar los changements de Wikidata 
dedens los dèrriérs changements",
        "wikibase-rc-wikibase-edit-letter": "B",
        "wikibase-rc-wikibase-edit-title": "Changement de {{WBREPONAME}}",
-       "wikibase-otherprojects": "Ôtros projèts"
+       "wikibase-otherprojects": "En ôtros projèts"
 }
diff --git a/extensions/Wikibase/client/i18n/nl.json 
b/extensions/Wikibase/client/i18n/nl.json
index 9586bb2..e80b71b 100644
--- a/extensions/Wikibase/client/i18n/nl.json
+++ b/extensions/Wikibase/client/i18n/nl.json
@@ -9,7 +9,8 @@
                        "Sjoerddebruin",
                        "Mar(c)",
                        "Robin0van0der0vliet",
-                       "Robin van der Vliet"
+                       "Robin van der Vliet",
+                       "Patio"
                ]
        },
        "wikibase-client-desc": "Client voor de uitbreiding Wikibase",
@@ -18,7 +19,7 @@
        "apihelp-query+pageterms-example-item": "Labels en aliassen voor het 
item Q84 opvragen.",
        "wikibase-after-page-move": "U kunt ook het gekoppelde item van 
{{WBREPONAME}} [$1 bijwerken] om de taalkoppelingen op de hernoemde pagina te 
kunnen beheren.",
        "wikibase-after-page-move-queued": "Het aan deze pagina gekoppelde [$1 
item van {{WBREPONAME}}] wordt binnenkort automatisch bijgewerkt. Houdt er dus 
rekening mee dat dit niet gelijk gebeurd.",
-       "wikibase-after-page-delete-queued": "Het aan deze pagina gekoppelde 
[$1 item van {{WBREPONAME}}] wordt binnenkort automatisch bijgewerkt. Houdt er 
dus rekening mee dat dit niet gelijk gebeurd.",
+       "wikibase-after-page-delete-queued": "Het aan deze pagina gekoppelde 
[$1 item van {{WBREPONAME}}] wordt binnenkort automatisch bijgewerkt. Houd er 
dus rekening mee dat dit niet direct gebeurt.",
        "wikibase-comment-add": "Item van {{WBREPONAME}} aangemaakt.",
        "wikibase-comment-remove": "Het gekoppelde item van {{WBREPONAME}} is 
verwijderd. De taalkoppelingen zijn verwijderd.",
        "wikibase-comment-linked": "Er is een item van {{WBREPONAME}} gekoppeld 
aan deze pagina.",
diff --git a/extensions/Wikibase/client/i18n/wuu.json 
b/extensions/Wikibase/client/i18n/wuu.json
index 0a2dfc1..bad8a9c 100644
--- a/extensions/Wikibase/client/i18n/wuu.json
+++ b/extensions/Wikibase/client/i18n/wuu.json
@@ -15,5 +15,5 @@
        "wikibase-rc-hide-wikidata-show": "显示",
        "wikibase-rc-wikibase-edit-letter": "数",
        "wikibase-rc-wikibase-edit-title": "{{WBREPONAME}}编辑",
-       "wikibase-otherprojects": "来别样项目里"
+       "wikibase-otherprojects": "别样项目里向"
 }
diff --git a/extensions/Wikibase/client/i18n/zgh.json 
b/extensions/Wikibase/client/i18n/zgh.json
index 1a6e8d3..01a389d 100644
--- a/extensions/Wikibase/client/i18n/zgh.json
+++ b/extensions/Wikibase/client/i18n/zgh.json
@@ -8,5 +8,6 @@
        "wikibase-rc-hide-wikidata-hide": "ⵙⵙⵏⵜⵍ",
        "wikibase-rc-hide-wikidata-show": "ⵙⴽⵏ",
        "wikibase-rc-wikibase-edit-letter": "ⴷ",
+       "wikibase-rc-wikibase-edit-title": "ⴰⵙⵏⴼⵍ ⵏ {{WBREPONAME}}",
        "wikibase-otherprojects": "ⴳ ⵉⵙⵏⵜⴰⵢⵏ ⵏⵏⵉⴹⵏ"
 }
diff --git a/extensions/Wikibase/composer.json 
b/extensions/Wikibase/composer.json
index d563171..f6d63e1 100644
--- a/extensions/Wikibase/composer.json
+++ b/extensions/Wikibase/composer.json
@@ -41,8 +41,7 @@
                "wikibase/javascript-api": "~1.1",
                "wikibase/serialization-javascript": "~2.0.5",
                "diff/diff": "~2.0",
-               "wikimedia/purtle": "~1.0",
-               "wikimedia/assert": "~0.2.2"
+               "wikimedia/purtle": "~1.0"
        },
        "require-dev": {
                "jakub-onderka/php-parallel-lint": "0.9.2",
diff --git a/extensions/Wikibase/lib/i18n/ko.json 
b/extensions/Wikibase/lib/i18n/ko.json
index da697d5..22c9029 100644
--- a/extensions/Wikibase/lib/i18n/ko.json
+++ b/extensions/Wikibase/lib/i18n/ko.json
@@ -84,7 +84,7 @@
        "wikibase-time-precision-annum": "서기 {{PLURAL:$1|$1년}}",
        "wikibase-time-precision-millennium": "$1. 천년",
        "wikibase-time-precision-century": "$1. 세기",
-       "wikibase-time-precision-10annum": "$1",
+       "wikibase-time-precision-10annum": "$1년대",
        "wikibase-time-precision-BCE-Gannum": "기원전 $1십억년",
        "wikibase-time-precision-BCE-Mannum": "기원전 $1백만년",
        "wikibase-time-precision-BCE-annum": "기원전 {{PLURAL:$1|$1년}}",
diff --git a/extensions/Wikibase/lib/includes/Formatters/HtmlTimeFormatter.php 
b/extensions/Wikibase/lib/includes/Formatters/HtmlTimeFormatter.php
index 5469f38..4182c84 100644
--- a/extensions/Wikibase/lib/includes/Formatters/HtmlTimeFormatter.php
+++ b/extensions/Wikibase/lib/includes/Formatters/HtmlTimeFormatter.php
@@ -80,6 +80,11 @@
         * @return bool
         */
        private function calendarNameNeeded( TimeValue $value ) {
+               // Do not care about possibly wrong calendar models with 
precision 10 years and more.
+               if ( $value->getPrecision() <= TimeValue::PRECISION_YEAR10 ) {
+                       return false;
+               }
+
                // Loose check if the timestamp string is ISO-ish and starts 
with a year.
                if ( !preg_match( '/^[-+]?\d+\b/', $value->getTime(), $matches 
) ) {
                        return true;
diff --git 
a/extensions/Wikibase/lib/tests/phpunit/Formatters/HtmlTimeFormatterTest.php 
b/extensions/Wikibase/lib/tests/phpunit/Formatters/HtmlTimeFormatterTest.php
index a48811e..3f5a7ad 100644
--- a/extensions/Wikibase/lib/tests/phpunit/Formatters/HtmlTimeFormatterTest.php
+++ b/extensions/Wikibase/lib/tests/phpunit/Formatters/HtmlTimeFormatterTest.php
@@ -66,11 +66,9 @@
        /**
         * @dataProvider timeFormatProvider
         */
-       public function testFormat( TimeValue $value, $pattern ) {
+       public function testFormat( TimeValue $value, $expected ) {
                $formatter = $this->getFormatter();
-
-               $html = $formatter->format( $value );
-               $this->assertRegExp( $pattern, $html );
+               $this->assertSame( $expected, $formatter->format( $value ) );
        }
 
        public function timeFormatProvider() {
@@ -82,161 +80,167 @@
                                '+1520-05-01T00:00:00Z',
                                TimeValue::PRECISION_DAY,
                                $gregorian,
-                               '/^MOCKDATE<sup 
class="wb-calendar-name">\(valueview-expert-timevalue-calendar-gregorian\)<\/sup>$/'
+                               'MOCKDATE<sup 
class="wb-calendar-name">(valueview-expert-timevalue-calendar-gregorian)</sup>'
                        ),
                        'a gregorian month in 1520' => array(
                                '+1520-05-01T00:00:00Z',
                                TimeValue::PRECISION_MONTH,
                                $gregorian,
-                               '/^MOCKDATE<sup 
class="wb-calendar-name">\(valueview-expert-timevalue-calendar-gregorian\)<\/sup>$/'
+                               'MOCKDATE<sup 
class="wb-calendar-name">(valueview-expert-timevalue-calendar-gregorian)</sup>'
                        ),
                        'a julian day in 1520' => array(
                                '+1520-05-01T00:00:00Z',
                                TimeValue::PRECISION_DAY,
                                $julian,
-                               '/^MOCKDATE$/'
+                               'MOCKDATE'
                        ),
                        'a gregorian day in 1920' => array(
                                '+1920-05-01T00:00:00Z',
                                TimeValue::PRECISION_DAY,
                                $gregorian,
-                               '/^MOCKDATE<sup 
class="wb-calendar-name">\(valueview-expert-timevalue-calendar-gregorian\)<\/sup>$/'
+                               'MOCKDATE<sup 
class="wb-calendar-name">(valueview-expert-timevalue-calendar-gregorian)</sup>'
                        ),
                        'a julian day in 1920' => array(
                                '+1920-05-01T00:00:00Z',
                                TimeValue::PRECISION_DAY,
                                $julian,
-                               '/^MOCKDATE<sup 
class="wb-calendar-name">\(valueview-expert-timevalue-calendar-julian\)<\/sup>$/'
+                               'MOCKDATE<sup 
class="wb-calendar-name">(valueview-expert-timevalue-calendar-julian)</sup>'
                        ),
                        'a julian day in 1980' => array(
                                '+1980-05-01T00:00:00Z',
                                TimeValue::PRECISION_DAY,
                                $julian,
-                               '/^MOCKDATE<sup 
class="wb-calendar-name">\(valueview-expert-timevalue-calendar-julian\)<\/sup>$/'
+                               'MOCKDATE<sup 
class="wb-calendar-name">(valueview-expert-timevalue-calendar-julian)</sup>'
                        ),
                        'a gregorian day in 1980' => array(
                                '+1980-05-01T00:00:00Z',
                                TimeValue::PRECISION_DAY,
                                $gregorian,
-                               '/^MOCKDATE$/'
+                               'MOCKDATE'
                        ),
 
                        'a gregorian year in -1000000' => array(
                                '-1000000-00-00T00:00:00Z',
                                TimeValue::PRECISION_YEAR,
                                $gregorian,
-                               '/^MOCKDATE<sup 
class="wb-calendar-name">\(valueview-expert-timevalue-calendar-gregorian\)<\/sup>$/'
+                               'MOCKDATE<sup 
class="wb-calendar-name">(valueview-expert-timevalue-calendar-gregorian)</sup>'
                        ),
                        'a julian year in -1000000' => array(
                                '-1000000-05-01T00:00:00Z',
                                TimeValue::PRECISION_YEAR,
                                $julian,
-                               '/^MOCKDATE$/'
+                               'MOCKDATE'
                        ),
                        'a gregorian year in 1520' => array(
                                '+1520-05-01T00:00:00Z',
                                TimeValue::PRECISION_YEAR,
                                $gregorian,
-                               '/^MOCKDATE<sup 
class="wb-calendar-name">\(valueview-expert-timevalue-calendar-gregorian\)<\/sup>$/'
+                               'MOCKDATE<sup 
class="wb-calendar-name">(valueview-expert-timevalue-calendar-gregorian)</sup>'
                        ),
                        'a julian year in 1520' => array(
                                '+1520-05-01T00:00:00Z',
                                TimeValue::PRECISION_YEAR,
                                $julian,
-                               '/^MOCKDATE$/'
+                               'MOCKDATE'
                        ),
                        'a gregorian year in 1920' => array(
                                '+1920-05-01T00:00:00Z',
                                TimeValue::PRECISION_YEAR,
                                $gregorian,
-                               '/^MOCKDATE$/'
+                               'MOCKDATE'
                        ),
                        'a julian year in 1920' => array(
                                '+1920-05-01T00:00:00Z',
                                TimeValue::PRECISION_YEAR,
                                $julian,
-                               '/^MOCKDATE<sup 
class="wb-calendar-name">\(valueview-expert-timevalue-calendar-julian\)<\/sup>$/'
+                               'MOCKDATE<sup 
class="wb-calendar-name">(valueview-expert-timevalue-calendar-julian)</sup>'
                        ),
                        'a julian year in 1980' => array(
                                '+1980-05-01T00:00:00Z',
                                TimeValue::PRECISION_YEAR,
                                $julian,
-                               '/^MOCKDATE<sup 
class="wb-calendar-name">\(valueview-expert-timevalue-calendar-julian\)<\/sup>$/'
+                               'MOCKDATE<sup 
class="wb-calendar-name">(valueview-expert-timevalue-calendar-julian)</sup>'
+                       ),
+                       'do not enforce calendar model on rough precisions' => 
array(
+                               '+1980-05-01T00:00:00Z',
+                               TimeValue::PRECISION_YEAR10,
+                               $julian,
+                               'MOCKDATE'
                        ),
                        'a gregorian year in 1980' => array(
                                '+1980-05-01T00:00:00Z',
                                TimeValue::PRECISION_YEAR,
                                $gregorian,
-                               '/^MOCKDATE$/'
+                               'MOCKDATE'
                        ),
 
                        'a month in 1980' => array(
                                '+1980-05-01T00:00:00Z',
                                TimeValue::PRECISION_MONTH,
                                $gregorian,
-                               '/^MOCKDATE$/'
+                               'MOCKDATE'
                        ),
 
                        '14th century' => array(
                                '+1300-00-00T00:00:00Z',
                                TimeValue::PRECISION_YEAR100,
                                $julian,
-                               '/^MOCKDATE$/'
+                               'MOCKDATE'
                        ),
 
                        '2014-10-10' => array(
                                '+2014-10-10T00:00:00Z',
                                TimeValue::PRECISION_DAY,
                                $gregorian,
-                               '/^MOCKDATE$/'
+                               'MOCKDATE'
                        ),
                        '2014-10-10 with leading zeros' => array(
                                '+00000002014-10-10T00:00:00Z',
                                TimeValue::PRECISION_DAY,
                                $gregorian,
-                               '/^MOCKDATE$/'
+                               'MOCKDATE'
                        ),
                        'massive year' => array(
                                '+00123452014-10-10T00:00:00Z',
                                TimeValue::PRECISION_DAY,
                                $gregorian,
-                               '/^MOCKDATE$/'
+                               'MOCKDATE'
                        ),
                        'negative' => array(
                                '-1-01-01T00:00:00Z',
                                TimeValue::PRECISION_DAY,
                                $gregorian,
-                               '/^MOCKDATE<sup 
class="wb-calendar-name">\(valueview-expert-timevalue-calendar-gregorian\)<\/sup>$/'
+                               'MOCKDATE<sup 
class="wb-calendar-name">(valueview-expert-timevalue-calendar-gregorian)</sup>'
                        ),
                        '32-bit integer overflow' => array(
                                '-2147483649-01-01T00:00:00Z',
                                TimeValue::PRECISION_DAY,
                                $gregorian,
-                               '/^MOCKDATE<sup 
class="wb-calendar-name">\(valueview-expert-timevalue-calendar-gregorian\)<\/sup>$/'
+                               'MOCKDATE<sup 
class="wb-calendar-name">(valueview-expert-timevalue-calendar-gregorian)</sup>'
                        ),
                        'unknown calendar model' => array(
                                '+2015-01-01T00:00:00Z',
                                TimeValue::PRECISION_DAY,
                                'Stardate',
-                               '/^MOCKDATE<sup 
class="wb-calendar-name">Stardate<\/sup>$/'
+                               'MOCKDATE<sup 
class="wb-calendar-name">Stardate</sup>'
                        ),
                        'optional sign' => array(
                                '2015-01-01T00:00:00Z',
                                TimeValue::PRECISION_DAY,
                                $gregorian,
-                               '/^MOCKDATE$/'
+                               'MOCKDATE'
                        ),
                        'unsupported time' => array(
                                'MOCKTIME',
                                TimeValue::PRECISION_DAY,
                                $gregorian,
-                               '/^MOCKDATE<sup 
class="wb-calendar-name">\(valueview-expert-timevalue-calendar-gregorian\)<\/sup>$/'
+                               'MOCKDATE<sup 
class="wb-calendar-name">(valueview-expert-timevalue-calendar-gregorian)</sup>'
                        ),
                        'HTML entities' => array(
                                '<a>injection</a>',
+                               TimeValue::PRECISION_DAY,
                                '<a>injection</a>',
-                               '<a>injection</a>',
-                               '/^MOCKDATE<sup 
class="wb-calendar-name">&lt;a&gt;injection&lt;\/a&gt;<\/sup>$/'
+                               'MOCKDATE<sup 
class="wb-calendar-name">&lt;a&gt;injection&lt;/a&gt;</sup>'
                        ),
                );
 
diff --git a/extensions/Wikibase/repo/i18n/fa.json 
b/extensions/Wikibase/repo/i18n/fa.json
index 5737dbe..4c6c1bd 100644
--- a/extensions/Wikibase/repo/i18n/fa.json
+++ b/extensions/Wikibase/repo/i18n/fa.json
@@ -22,7 +22,8 @@
                        "درفش کاویانی",
                        "Alirezaaa",
                        "Bersam",
-                       "Huji"
+                       "Huji",
+                       "Alifakoor"
                ]
        },
        "wikibase-desc": "مخزن داده‌های ساخت‌یافته",
@@ -66,7 +67,7 @@
        "wikibase-diffview-alias": "نام‌های دیگر",
        "wikibase-diffview-description": "توضیحات",
        "wikibase-diffview-link": "پیوندها",
-       "wikibase-sitelink-site-edit-placeholder": "وب‌گاه",
+       "wikibase-sitelink-site-edit-placeholder": "ویکی",
        "wikibase-sitelink-page-edit-placeholder": "صفحه",
        "wikibase-alias-edit-placeholder": "واردکردن نام مستعار",
        "wikibase-label-input-help-message": "برچسب این موجودیت را به $1 وارد 
کنید.",
diff --git a/extensions/Wikibase/repo/i18n/frp.json 
b/extensions/Wikibase/repo/i18n/frp.json
index 6a3a421..22e5447 100644
--- a/extensions/Wikibase/repo/i18n/frp.json
+++ b/extensions/Wikibase/repo/i18n/frp.json
@@ -15,9 +15,9 @@
        "wikibase-add": "apondre",
        "wikibase-save-inprogress": "Encartâjo en cors...",
        "wikibase-remove-inprogress": "Suprèssion en cors...",
-       "wikibase-label-empty": "Gins de lambél dèfeni",
+       "wikibase-label-empty": "Nion lambél dèfeni",
        "wikibase-label-edit-placeholder": "buchiér un lambél",
-       "wikibase-description-empty": "Gins de dèscripcion dèfenia",
+       "wikibase-description-empty": "Niona dèscripcion dèfenia",
        "wikibase-description-edit-placeholder": "buchiér na dèscripcion",
        "wikibase-sitelink-site-edit-placeholder": "seto",
        "wikibase-sitelink-page-edit-placeholder": "articllo",
@@ -38,6 +38,7 @@
        "wikibase-disambiguation-title": "Homonimia por « $1 »",
        "wb-special-newitem-new-item-notification": "Un novél èlèment $1 fêt et 
pués redirigiê vers la sina pâge. Retôrn a $2.",
        "wikibase-propertypage-datatype": "Tipo de donâs",
+       "wikibase-statementview-rank-normal": "Renche normala",
        "wikibase-snakview-property-input-placeholder": "propriètât",
        "wikibase-validator-label-conflict": "N’ôtra propriètât ($3) at ja lo 
lambél « $1 » associyê u code lengoua $2",
        "wikibase-validator-label-with-description-conflict": "Un ôtr’èlèment 
($3) at ja lo lambél « $1 » et la dèscripcion « $4 » associyês u code lengoua 
$2",
diff --git a/extensions/Wikibase/repo/i18n/ka.json 
b/extensions/Wikibase/repo/i18n/ka.json
index ed19ab6..b06526d 100644
--- a/extensions/Wikibase/repo/i18n/ka.json
+++ b/extensions/Wikibase/repo/i18n/ka.json
@@ -38,7 +38,7 @@
        "wikibase-diffview-alias": "ფსევდონიმები",
        "wikibase-diffview-description": "აღწერა",
        "wikibase-diffview-link": "ბმულები",
-       "wikibase-sitelink-site-edit-placeholder": "ვებ-გვერდი",
+       "wikibase-sitelink-site-edit-placeholder": "ვიკი",
        "wikibase-sitelink-page-edit-placeholder": "გვერდი",
        "wikibase-alias-edit-placeholder": "ფსევდონიმის შეყვანა",
        "wikibase-label-input-help-message": "დაამატეთ ამ მონაცემთა ნაკრების 
სათაური შემდეგ ენაზე: $1.",
diff --git a/extensions/Wikibase/repo/i18n/pl.json 
b/extensions/Wikibase/repo/i18n/pl.json
index 9ec1844..343b4c7 100644
--- a/extensions/Wikibase/repo/i18n/pl.json
+++ b/extensions/Wikibase/repo/i18n/pl.json
@@ -150,7 +150,7 @@
        "wikibase-newproperty-datatype": "Typ danych:",
        "wikibase-newproperty-invalid-datatype": "Podano nieprawidłowy typ 
danych.",
        "special-newitem": "Utwórz nowy element",
-       "wikibase-newitem-summary": "Upewnij się czy [[Special:Search|dany 
element już istnieje]]!<br />Dla wszystkich nowych elementów powinno się 
utworzyć [[Help:Label|etykietę]] oraz [[Help:Description|opis]].",
+       "wikibase-newitem-summary": "Upewnij się, [[Special:Search|czy dany 
element już istnieje]]!<br />Dla wszystkich nowych elementów należy utworzyć 
[[Help:Label|etykietę]] oraz [[Help:Description|opis]].",
        "wikibase-newitem-fieldset": "Utwórz nowy element",
        "wikibase-newitem-site": "Położenie pierwszej linkowanej strony",
        "wikibase-newitem-page": "Nazwa pierwszej linkowanej strony",
diff --git a/extensions/Wikibase/repo/i18n/zgh.json 
b/extensions/Wikibase/repo/i18n/zgh.json
index c7a375c..c226843 100644
--- a/extensions/Wikibase/repo/i18n/zgh.json
+++ b/extensions/Wikibase/repo/i18n/zgh.json
@@ -5,5 +5,6 @@
                ]
        },
        "wikibase-edit": "ⵙⵏⴼⵍ",
-       "wikibase-add": "ⵔⵏⵓ"
+       "wikibase-add": "ⵔⵏⵓ",
+       "wikibase-sitelinks-special": "ⵉⵙⵉⵜⵏ ⵢⴰⴹⵏ"
 }
diff --git a/extensions/Wikibase/repo/includes/Parsers/MwTimeIsoParser.php 
b/extensions/Wikibase/repo/includes/Parsers/MwTimeIsoParser.php
index 973ab85..04ace74 100644
--- a/extensions/Wikibase/repo/includes/Parsers/MwTimeIsoParser.php
+++ b/extensions/Wikibase/repo/includes/Parsers/MwTimeIsoParser.php
@@ -148,6 +148,11 @@
         */
        private function parseFromOutputString( Language $lang, $value, 
$precision, $msgKey ) {
                $msgText = $lang->getMessage( $msgKey );
+
+               if ( strpos( $msgText, '$1' ) === false || $msgText === '$1' ) {
+                       return null;
+               }
+
                $isBceMsg = $this->isBceMsg( $msgKey );
                $msgRegexp = $this->getRegexpFromMessageText( $msgText );
 
diff --git a/extensions/Wikibase/repo/includes/Parsers/TimeParserFactory.php 
b/extensions/Wikibase/repo/includes/Parsers/TimeParserFactory.php
index 2cd8d75..259c6d8 100644
--- a/extensions/Wikibase/repo/includes/Parsers/TimeParserFactory.php
+++ b/extensions/Wikibase/repo/includes/Parsers/TimeParserFactory.php
@@ -105,9 +105,15 @@
                        $canonicalMonthNames = 
$this->monthNameProvider->getLocalizedMonthNames(
                                self::CANONICAL_LANGUAGE_CODE
                        );
-                       $replacements = array_map( function( $i ) use ( 
$canonicalMonthNames ) {
-                               return $canonicalMonthNames[$i];
-                       }, $this->monthNameProvider->getMonthNumbers( 
$languageCode ) );
+                       $replacements = 
$this->monthNameProvider->getMonthNumbers( $languageCode );
+
+                       foreach ( $replacements as $localizedMonthName => &$i ) 
{
+                               if ( !is_string( $localizedMonthName ) ) {
+                                       unset( 
$replacements[$localizedMonthName] );
+                               } else {
+                                       $i = $canonicalMonthNames[$i];
+                               }
+                       }
                }
 
                return new MonthNameUnlocalizer( $replacements );
diff --git 
a/extensions/Wikibase/repo/tests/phpunit/includes/Parsers/MwTimeIsoParserTest.php
 
b/extensions/Wikibase/repo/tests/phpunit/includes/Parsers/MwTimeIsoParserTest.php
index 999eb50..ad3400f 100644
--- 
a/extensions/Wikibase/repo/tests/phpunit/includes/Parsers/MwTimeIsoParserTest.php
+++ 
b/extensions/Wikibase/repo/tests/phpunit/includes/Parsers/MwTimeIsoParserTest.php
@@ -99,7 +99,13 @@
                        // With $1 in the PLURAL case
                        'wikibase-time-precision-BCE-century' => 
'{{PLURAL:$1|$1 one|$1 more|$1 evenmore}} precision-BCE-century',
                        // A random template in the message
-                       'wikibase-time-precision-10annum' => '$1 
precision-10annum{{PLURAL:$1||s}} {{dummy|1|2|3}}'
+                       'wikibase-time-precision-10annum' => '$1 
precision-10annum{{PLURAL:$1||s}} {{dummy|1|2|3}}',
+
+                       // Invalid messages
+                       'wikibase-time-precision-BCE-10annum' => '$1',
+                       'wikibase-time-precision-BCE-millennium' => '-',
+                       'wikibase-time-precision-BCE-annum' => '',
+                       'wikibase-time-precision-BCE-Gannum' => null,
                ];
        }
 
diff --git 
a/extensions/Wikibase/repo/tests/phpunit/includes/Parsers/TimeParserFactoryTest.php
 
b/extensions/Wikibase/repo/tests/phpunit/includes/Parsers/TimeParserFactoryTest.php
index e6e3766..b6ed55f 100644
--- 
a/extensions/Wikibase/repo/tests/phpunit/includes/Parsers/TimeParserFactoryTest.php
+++ 
b/extensions/Wikibase/repo/tests/phpunit/includes/Parsers/TimeParserFactoryTest.php
@@ -54,11 +54,17 @@
                return $monthNameProvider;
        }
 
-       private function newTimeParserFactory( $languageCode ) {
+       private function newTimeParserFactory(
+               $languageCode,
+               MonthNameProvider $monthNameProvider = null
+       ) {
                $options = new ParserOptions();
                $options->setOption( ValueParser::OPT_LANG, $languageCode );
 
-               return new TimeParserFactory( $options, 
$this->newMonthNameProvider() );
+               return new TimeParserFactory(
+                       $options,
+                       $monthNameProvider ?: $this->newMonthNameProvider()
+               );
        }
 
        public function testGetTimeParser() {
@@ -76,7 +82,7 @@
                $parser = $factory->getTimeParser();
                $actual = $parser->parse( $value );
 
-               $this->assertEquals( $expected->getArrayValue(), 
$actual->getArrayValue() );
+               $this->assertSame( $expected->getArrayValue(), 
$actual->getArrayValue() );
        }
 
        public function validInputProvider() {
@@ -287,7 +293,7 @@
                );
                $actual = $factory->getTimeParser()->parse( $value );
 
-               $this->assertEquals( $expected->getArrayValue(), 
$actual->getArrayValue() );
+               $this->assertSame( $expected->getArrayValue(), 
$actual->getArrayValue() );
        }
 
        public function parserOptionsProvider() {
@@ -373,7 +379,7 @@
                $factory = $this->newTimeParserFactory( $languageCode );
                $unlocalizer = $factory->getMonthNameUnlocalizer();
 
-               $this->assertEquals( $expected, $unlocalizer->unlocalize( $date 
) );
+               $this->assertSame( $expected, $unlocalizer->unlocalize( $date ) 
);
        }
 
        public function localizedMonthNameProvider() {
@@ -457,7 +463,7 @@
                        $date = $unlocalizer->unlocalize( $date );
                }
 
-               $this->assertEquals( $expected, $date );
+               $this->assertSame( $expected, $date );
        }
 
        public function localizedMonthName_withLanguageChainProvider() {
@@ -476,4 +482,18 @@
                );
        }
 
+       public function testMonthNameUnlocalizer_withUnlocalizedMonthNumbers() {
+               $monthNameProvider = $this->getMock( MonthNameProvider::class );
+               $monthNameProvider->expects( $this->any() )
+                       ->method( 'getLocalizedMonthNames' )
+                       ->will( $this->returnValue( [ 2 => 'Localized' ] ) );
+               $monthNameProvider->expects( $this->any() )
+                       ->method( 'getMonthNumbers' )
+                       ->will( $this->returnValue( [ '2' => 2 ] ) );
+
+               $factory = $this->newTimeParserFactory( 'ko', 
$monthNameProvider );
+               $unlocalizer = $factory->getMonthNameUnlocalizer();
+               $this->assertSame( '2000', $unlocalizer->unlocalize( '2000' ) );
+       }
+
 }
diff --git 
a/extensions/Wikibase/view/resources/jquery/wikibase/jquery.wikibase.entityselector.js
 
b/extensions/Wikibase/view/resources/jquery/wikibase/jquery.wikibase.entityselector.js
index 509efa5..f7ba671 100644
--- 
a/extensions/Wikibase/view/resources/jquery/wikibase/jquery.wikibase.entityselector.js
+++ 
b/extensions/Wikibase/view/resources/jquery/wikibase/jquery.wikibase.entityselector.js
@@ -172,7 +172,6 @@
        _search: function( event ) {
                var self = this;
 
-               this._cache = {};
                this._select( null );
 
                clearTimeout( this._searching );
@@ -214,17 +213,25 @@
         * @param {string} term
         * @return {Object}
         */
-       _getData: function( term ) {
-               return {
+       _getSearchApiParameters: function( term ) {
+               var data = {
                        action: 'wbsearchentities',
                        search: term,
                        format: 'json',
                        language: this.options.language,
                        uselang: this.options.language,
-                       type: this.options.type,
-                       'continue': this._cache[term] && 
this._cache[term].nextSuggestionOffset
-                       ? this._cache[term].nextSuggestionOffset : 0
+                       type: this.options.type
                };
+
+               if ( this._cache.term === term && 
this._cache.nextSuggestionOffset ) {
+                       data.continue = this._cache.nextSuggestionOffset;
+               }
+
+               if ( this.options.limit ) {
+                       data.limit = this.options.limit;
+               }
+
+               return data;
        },
 
        /**
@@ -239,20 +246,13 @@
                var self = this;
 
                return function( term ) {
-                       var deferred = $.Deferred(),
-                               data = self._getData( term );
-
-                       if ( self.options.limit ) {
-                               $.extend( data, {
-                                       limit: self.options.limit
-                               } );
-                       }
+                       var deferred = $.Deferred();
 
                        $.ajax( {
                                url: self.options.url,
                                timeout: self.options.timeout,
                                dataType: 'json',
-                               data: data
+                               data: self._getSearchApiParameters( term )
                        } )
                        .done( function( response ) {
                                deferred.resolve(
@@ -358,10 +358,7 @@
                customItems.unshift( new $.ui.ooMenu.CustomItem(
                        this.options.messages.more,
                        function() {
-                               var cached = self._cache[self._term];
-                               return cached
-                                       && cached.nextSuggestionOffset
-                                       && cached.nextSuggestionOffset > 
cached.suggestions.length - 1;
+                               return self._cache.term === self._term && 
self._cache.nextSuggestionOffset;
                        },
                        function() {
                                self.search( $.Event( 'programmatic' ) );
@@ -393,18 +390,18 @@
                .then( function( suggestions, searchTerm, nextSuggestionOffset 
) {
                        var deferred = $.Deferred();
 
-                       if ( self._cache[searchTerm] && 
self._cache[searchTerm].nextSuggestionOffset ) {
-                               self._cache[searchTerm].suggestions = 
self._cache[searchTerm].suggestions.concat( suggestions );
-                               self._cache[searchTerm].nextSuggestionOffset = 
nextSuggestionOffset;
+                       if ( self._cache.term === searchTerm && 
self._cache.nextSuggestionOffset ) {
+                               self._cache.suggestions = 
self._cache.suggestions.concat( suggestions );
+                               self._cache.nextSuggestionOffset = 
nextSuggestionOffset;
                        } else {
-                               self._cache = {};
-                               self._cache[searchTerm] = {
+                               self._cache = {
+                                       term: searchTerm,
                                        suggestions: suggestions,
                                        nextSuggestionOffset: 
nextSuggestionOffset
                                };
                        }
 
-                       deferred.resolve( self._cache[searchTerm].suggestions, 
searchTerm );
+                       deferred.resolve( self._cache.suggestions, searchTerm );
                        return deferred.promise();
                } );
        },
diff --git 
a/extensions/Wikibase/view/resources/jquery/wikibase/jquery.wikibase.sitelinkgroupview.js
 
b/extensions/Wikibase/view/resources/jquery/wikibase/jquery.wikibase.sitelinkgroupview.js
index 6bae21d..8a6f175 100644
--- 
a/extensions/Wikibase/view/resources/jquery/wikibase/jquery.wikibase.sitelinkgroupview.js
+++ 
b/extensions/Wikibase/view/resources/jquery/wikibase/jquery.wikibase.sitelinkgroupview.js
@@ -93,11 +93,14 @@
         * @see jQuery.ui.TemplatedWidget._create
         */
        _create: function() {
-               if ( !this.options.groupName || !this.options.siteLinksChanger 
|| !this.options.entityIdPlainFormatter ) {
+               if ( !this.options.groupName
+                       || !this.options.siteLinksChanger
+                       || !this.options.entityIdPlainFormatter
+               ) {
                        throw new Error( 'Required parameter(s) missing' );
                }
 
-               this.options.value = this._checkValue( this.options.value );
+               this.options.value = this.options.value || [];
                this._siteIdsOfGroup = getSiteIdsOfGroup( 
this.options.groupName );
 
                PARENT.prototype._create.call( this );
@@ -203,18 +206,6 @@
        },
 
        /**
-        * @param {*} value
-        * @return {Object}
-        */
-       _checkValue: function( value ) {
-               if ( !value ) {
-                       value = [];
-               }
-
-               return value;
-       },
-
-       /**
         * @see jQuery.ui.EditableTemplatedWidget.startEditing
         */
        startEditing: function() {
@@ -271,8 +262,8 @@
        /**
         * @see jQuery.ui.EditableTemplatedWidget.value
         *
-        * @param {Object} [value]
-        * @return {Object|*}
+        * @param {wikibase.datamodel.SiteLink[]} [value]
+        * @return {wikibase.datamodel.SiteLink[]}
         */
        value: function( value ) {
                if ( value !== undefined ) {
@@ -286,7 +277,7 @@
         * @see jQuery.ui.EditableTemplatedWidget.isEmpty
         */
        isEmpty: function() {
-               return !this.value().length;
+               return !this.options.value.length;
        },
 
        /**
@@ -317,7 +308,13 @@
         */
        _setOption: function( key, value ) {
                if ( key === 'value' ) {
-                       value = this._checkValue( value );
+                       value = value || [];
+               } else if ( key === 'groupName' && value !== 
this.options.groupName ) {
+                       this._siteIdsOfGroup = getSiteIdsOfGroup( value );
+                       this.$sitelinklistview.data( 'sitelinklistview' )
+                               .option( 'allowedSiteIds', this._siteIdsOfGroup 
);
+
+                       this.draw();
                }
 
                var response = PARENT.prototype._setOption.call( this, key, 
value );
@@ -325,12 +322,6 @@
                if ( key === 'value' ) {
                        this.$sitelinklistview.data( 'sitelinklistview' )
                        .value( this.options.value );
-
-                       this.draw();
-               } else if ( key === 'groupName' ) {
-                       this._siteIdsOfGroup = getSiteIdsOfGroup( value );
-                       this.$sitelinklistview.data( 'sitelinklistview' )
-                       .option( 'allowedSiteIds', this._siteIdsOfGroup );
 
                        this.draw();
                } else if ( key === 'disabled' ) {
diff --git a/extensions/Wikibase/view/resources/wikibase/view/ViewFactory.js 
b/extensions/Wikibase/view/resources/wikibase/view/ViewFactory.js
index c504756..19f2bbb 100644
--- a/extensions/Wikibase/view/resources/wikibase/view/ViewFactory.js
+++ b/extensions/Wikibase/view/resources/wikibase/view/ViewFactory.js
@@ -214,17 +214,17 @@
         *
         * @param {jQuery.util.EventSingletonManager} eventSingletonManager
         * @param {string} groupName
-        * @param {wikibase.datamodel.SiteLink[]} value
+        * @param {wikibase.datamodel.SiteLink[]} siteLinks
         * @param {jQuery} $sitelinkgroupview
         * @return {jQuery.wikibase.sitelinkgroupview} The constructed 
sitelinkgroupview
         **/
-       SELF.prototype.getSitelinkGroupView = function( eventSingletonManager, 
groupName, value, $sitelinkgroupview ) {
+       SELF.prototype.getSitelinkGroupView = function( eventSingletonManager, 
groupName, siteLinks, $sitelinkgroupview ) {
                return this._getView(
                        'sitelinkgroupview',
                        $sitelinkgroupview,
                        {
                                groupName: groupName,
-                               value: value,
+                               value: siteLinks,
                                eventSingletonManager: eventSingletonManager,
                                siteLinksChanger: 
this._entityChangersFactory.getSiteLinksChanger(),
                                entityIdPlainFormatter: 
this._entityIdPlainFormatter
diff --git 
a/extensions/Wikibase/view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinkgroupview.tests.js
 
b/extensions/Wikibase/view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinkgroupview.tests.js
index 4d615aa..b9619cf 100644
--- 
a/extensions/Wikibase/view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinkgroupview.tests.js
+++ 
b/extensions/Wikibase/view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinkgroupview.tests.js
@@ -229,29 +229,29 @@
 QUnit.test( 'value()', function( assert ) {
        assert.expect( 2 );
        var siteLink = new wikibase.datamodel.SiteLink( 'enwiki', 'Main Page' ),
-               value = [siteLink],
+               siteLinks = [siteLink],
                $sitelinkgroupview = createSitelinkgroupview( {
                        groupName: 'group1',
-                       value: value
+                       value: siteLinks
                } ),
                sitelinkgroupview = $sitelinkgroupview.data( 
'sitelinkgroupview' );
 
        assert.deepEqual(
                sitelinkgroupview.value(),
-               value,
+               siteLinks,
                'Retrieved initial value.'
        );
 
-       value = [
+       siteLinks = [
                new wikibase.datamodel.SiteLink( 'dewiki', '1234' ),
                new wikibase.datamodel.SiteLink( 'enwiki', '5678' )
        ];
 
-       sitelinkgroupview.value( value );
+       sitelinkgroupview.value( siteLinks );
 
        assert.deepEqual(
                sitelinkgroupview.value(),
-               value,
+               siteLinks,
                'Set and retrieved new value.'
        );
 } );
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index c227be5..5be0f95 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -207,53 +207,6 @@
         ]
     },
     {
-        "name": "wikimedia/assert",
-        "version": "v0.2.2",
-        "version_normalized": "0.2.2.0",
-        "source": {
-            "type": "git",
-            "url": "https://github.com/wmde/Assert.git";,
-            "reference": "2da55927525975f8d52825fc3ee02e5e36f5036c"
-        },
-        "dist": {
-            "type": "zip",
-            "url": 
"https://api.github.com/repos/wmde/Assert/zipball/2da55927525975f8d52825fc3ee02e5e36f5036c";,
-            "reference": "2da55927525975f8d52825fc3ee02e5e36f5036c",
-            "shasum": ""
-        },
-        "require-dev": {
-            "phpunit/phpunit": "3.7.*"
-        },
-        "time": "2015-04-29 17:23:50",
-        "type": "library",
-        "installation-source": "dist",
-        "autoload": {
-            "psr-4": {
-                "Wikimedia\\Assert\\": "src/",
-                "Wikimedia\\Assert\\Test\\": "tests/phpunit/"
-            }
-        },
-        "notification-url": "https://packagist.org/downloads/";,
-        "license": [
-            "MIT"
-        ],
-        "authors": [
-            {
-                "name": "Daniel Kinzler"
-            }
-        ],
-        "description": "Provides runtime assertions",
-        "homepage": "https://github.com/wmde/Assert";,
-        "keywords": [
-            "assert",
-            "assertions",
-            "php",
-            "postcondition",
-            "precondition",
-            "qa"
-        ]
-    },
-    {
         "name": "data-values/javascript",
         "version": "0.8.2",
         "version_normalized": "0.8.2.0",
@@ -1394,12 +1347,12 @@
         "source": {
             "type": "git",
             "url": 
"https://github.com/wikimedia/mediawiki-extensions-Wikibase.git";,
-            "reference": "322a6a96762cb42310c9a6848d4b08a0445b77e8"
+            "reference": "aff01e1b44fc1a6b2139d48b6d9d4b5afa75e97d"
         },
         "dist": {
             "type": "zip",
-            "url": 
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/322a6a96762cb42310c9a6848d4b08a0445b77e8";,
-            "reference": "322a6a96762cb42310c9a6848d4b08a0445b77e8",
+            "url": 
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/aff01e1b44fc1a6b2139d48b6d9d4b5afa75e97d";,
+            "reference": "aff01e1b44fc1a6b2139d48b6d9d4b5afa75e97d",
             "shasum": ""
         },
         "require": {
@@ -1423,7 +1376,6 @@
             "wikibase/internal-serialization": "~2.3",
             "wikibase/javascript-api": "~1.1",
             "wikibase/serialization-javascript": "~2.0.5",
-            "wikimedia/assert": "~0.2.2",
             "wikimedia/purtle": "~1.0"
         },
         "conflict": {
@@ -1433,7 +1385,7 @@
             "jakub-onderka/php-parallel-lint": "0.9.2",
             "mediawiki/mediawiki-codesniffer": "0.4.0|0.5.0"
         },
-        "time": "2016-07-06 08:20:46",
+        "time": "2016-07-07 09:23:42",
         "type": "mediawiki-extension",
         "installation-source": "dist",
         "autoload": {
@@ -1574,6 +1526,53 @@
         }
     },
     {
+        "name": "wikimedia/assert",
+        "version": "v0.2.2",
+        "version_normalized": "0.2.2.0",
+        "source": {
+            "type": "git",
+            "url": "https://github.com/wmde/Assert.git";,
+            "reference": "2da55927525975f8d52825fc3ee02e5e36f5036c"
+        },
+        "dist": {
+            "type": "zip",
+            "url": 
"https://api.github.com/repos/wmde/Assert/zipball/2da55927525975f8d52825fc3ee02e5e36f5036c";,
+            "reference": "2da55927525975f8d52825fc3ee02e5e36f5036c",
+            "shasum": ""
+        },
+        "require-dev": {
+            "phpunit/phpunit": "3.7.*"
+        },
+        "time": "2015-04-29 17:23:50",
+        "type": "library",
+        "installation-source": "dist",
+        "autoload": {
+            "psr-4": {
+                "Wikimedia\\Assert\\": "src/",
+                "Wikimedia\\Assert\\Test\\": "tests/phpunit/"
+            }
+        },
+        "notification-url": "https://packagist.org/downloads/";,
+        "license": [
+            "MIT"
+        ],
+        "authors": [
+            {
+                "name": "Daniel Kinzler"
+            }
+        ],
+        "description": "Provides runtime assertions",
+        "homepage": "https://github.com/wmde/Assert";,
+        "keywords": [
+            "assert",
+            "assertions",
+            "php",
+            "postcondition",
+            "precondition",
+            "qa"
+        ]
+    },
+    {
         "name": "wikibase/external-validation",
         "version": "dev-master",
         "version_normalized": "9999999-dev",

-- 
To view, visit https://gerrit.wikimedia.org/r/297759
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I3b84706c39f7aa10b134ba3a61d2813294d04d8d
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Wikidata
Gerrit-Branch: master
Gerrit-Owner: WikidataBuilder <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to