WikidataBuilder has uploaded a new change for review. (
https://gerrit.wikimedia.org/r/368580 )
Change subject: New Wikidata Build - 2017-07-30T10:00:02+0000
......................................................................
New Wikidata Build - 2017-07-30T10:00:02+0000
Change-Id: I1f5ae8790678e67d04ba577195a12a4eacf4cfe0
---
M composer.lock
M extensions/Constraints/i18n/roa-tara.json
A extensions/Quality/i18n/sr-ec.json
M extensions/Wikibase/client/includes/Usage/Sql/EntityUsageTable.php
M
extensions/Wikibase/client/tests/phpunit/includes/Usage/Sql/EntityUsageTableTest.php
M extensions/Wikibase/lib/i18n/sr-ec.json
M extensions/Wikibase/repo/i18n/ko.json
M extensions/Wikibase/repo/i18n/sr-ec.json
M extensions/Wikibase/repo/includes/Specials/SpecialNewEntity.php
M extensions/Wikibase/repo/maintenance/dispatchChanges.php
M vendor/composer/installed.json
11 files changed, 147 insertions(+), 35 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Wikidata
refs/changes/80/368580/1
diff --git a/composer.lock b/composer.lock
index 8432002..12acc10 100644
--- a/composer.lock
+++ b/composer.lock
@@ -966,7 +966,7 @@
"source": {
"type": "git",
"url":
"https://gerrit.wikimedia.org/r/mediawiki/extensions/WikibaseQualityConstraints",
- "reference": "744bc12339f0d6567ce2790ffd01d73b9f60310a"
+ "reference": "ebbaf106782b8e6c6639a6edcb02587b8e7bfeaf"
},
"require": {
"php": ">=5.5.9",
@@ -1027,7 +1027,7 @@
"support": {
"issues":
"https://phabricator.wikimedia.org/project/profile/1202/"
},
- "time": "2017-07-27 21:24:23"
+ "time": "2017-07-28 20:48:18"
},
{
"name": "wikibase/data-model",
@@ -1432,7 +1432,7 @@
"source": {
"type": "git",
"url":
"https://gerrit.wikimedia.org/r/mediawiki/extensions/WikibaseQuality",
- "reference": "1e4dfadae8a41c5794d0670c83bf28243b2e2481"
+ "reference": "22aafec778ad7605863090758753c21e79ed44df"
},
"require": {
"php": ">=5.5.9",
@@ -1491,7 +1491,7 @@
"support": {
"issues":
"https://phabricator.wikimedia.org/project/profile/989/"
},
- "time": "2017-07-26 20:59:16"
+ "time": "2017-07-28 20:48:10"
},
{
"name": "wikibase/serialization-javascript",
@@ -1540,12 +1540,12 @@
"source": {
"type": "git",
"url":
"https://github.com/wikimedia/mediawiki-extensions-Wikibase.git",
- "reference": "83ce335686dbd44384d9e5704191e32dd286da51"
+ "reference": "10974ed2f854d8590ef4feed325d32f190bf48b8"
},
"dist": {
"type": "zip",
- "url":
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/83ce335686dbd44384d9e5704191e32dd286da51",
- "reference": "83ce335686dbd44384d9e5704191e32dd286da51",
+ "url":
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/10974ed2f854d8590ef4feed325d32f190bf48b8",
+ "reference": "10974ed2f854d8590ef4feed325d32f190bf48b8",
"shasum": ""
},
"require": {
@@ -1621,7 +1621,7 @@
"wikibaserepo",
"wikidata"
],
- "time": "2017-07-27 21:24:03"
+ "time": "2017-07-30 08:58:55"
},
{
"name": "wikibase/wikimedia-badges",
diff --git a/extensions/Constraints/i18n/roa-tara.json
b/extensions/Constraints/i18n/roa-tara.json
index 2267129..f7c655d 100644
--- a/extensions/Constraints/i18n/roa-tara.json
+++ b/extensions/Constraints/i18n/roa-tara.json
@@ -4,5 +4,27 @@
"Joetaras"
]
},
- "wbqc-constraintreport-status-bad-parameters": "Parametre sbagghiate"
+ "wbqc-constraintreport": "Elenghe de le vingole",
+ "wbqc-desc": "Condrolle le vingole sus a le eleminde e sus a le
probbietà e face 'ndrucà le resultate jndr'à 'na pàgena speciale",
+ "wbqc-constraintreport-form-section": "Condrolle le vingole pe entità",
+ "wbqc-constraintreport-form-submit-label": "Verifiche",
+ "wbqc-constraintreport-form-entityid-label": "ID de l'entità:",
+ "wbqc-constraintreport-result-headline": "Resultate pe",
+ "wbqc-constraintreport-invalid-entity-id": "ID de l'entità non valide.",
+ "wbqc-constraintreport-not-existent-entity": "L'entità non g'esiste.",
+ "wbqc-constraintreport-empty-result": "Non ge stonne vingole definite
sus a st'entità.",
+ "wbqc-constraintreport-status-violation": "Violazione",
+ "wbqc-constraintreport-status-compliance": "Conforme",
+ "wbqc-constraintreport-status-exception": "Eccezzione",
+ "wbqc-constraintreport-status-todo": "Da fà",
+ "wbqc-constraintreport-status-bad-parameters": "Parametre sbagghiate",
+ "wbqc-constraintreport-status-deprecated": "Sconzigliate",
+ "wbqc-constraintreport-status-warning": "Avvertimende",
+ "wbqc-constraintreport-result-table-header-status": "State",
+ "wbqc-constraintreport-result-table-header-claim": "Asserzione",
+ "wbqc-constraintreport-result-table-header-constraint": "Vingole",
+ "wbqc-constraintreport-result-link-to-claim": "vèje a l'asserzione",
+ "wbqc-constraintreport-result-link-to-constraint": "vèje a 'u vingole",
+ "wbqc-constraintreport-no-parameter": "ninde",
+ "wbqc-problems-short": "Probbleme"
}
diff --git a/extensions/Quality/i18n/sr-ec.json
b/extensions/Quality/i18n/sr-ec.json
new file mode 100644
index 0000000..023b0a9
--- /dev/null
+++ b/extensions/Quality/i18n/sr-ec.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Милан Јелисавчић"
+ ]
+ },
+ "wbq-violations-group-label": "Група:",
+ "wbq-violations-type-label": "Врста:",
+ "wbq-violations-form-select-all": "(све)",
+ "wbq-violations-exceptions-checkbox-label": "Прикажи изузетке",
+ "wbq-violations-table-header-claim": "Тврдња",
+ "wbq-violations-table-header-constraint-type": "Врста",
+ "wbq-violations-table-header-status": "Статус",
+ "wbq-violations-table-header-additional-info": "Додатне информације",
+ "wbq-violations-status-unverified": "Непроверено",
+ "wbq-violations-status-exception": "Изузетак",
+ "wbq-violations-mark-as-exception": "Означи као изузетак"
+}
diff --git a/extensions/Wikibase/client/includes/Usage/Sql/EntityUsageTable.php
b/extensions/Wikibase/client/includes/Usage/Sql/EntityUsageTable.php
index 7ad70b2..913fe21 100644
--- a/extensions/Wikibase/client/includes/Usage/Sql/EntityUsageTable.php
+++ b/extensions/Wikibase/client/includes/Usage/Sql/EntityUsageTable.php
@@ -105,11 +105,20 @@
// Collect affected row IDs, so we can use them for an
// efficient update query on the master db.
- $where = [
- 'eu_page_id' => (int)$pageId,
- $db->makeList( $usageConditions, LIST_OR )
- ];
- return $this->getPrimaryKeys( $where, __METHOD__ );
+ $rowIds = [];
+ foreach ( array_chunk( $usageConditions, $this->batchSize ) as
$usageConditionChunk ) {
+ $where = [
+ 'eu_page_id' => (int)$pageId,
+ $db->makeList( $usageConditionChunk, LIST_OR )
+ ];
+
+ $rowIds = array_merge(
+ $this->getPrimaryKeys( $where, __METHOD__ ),
+ $rowIds
+ );
+ }
+
+ return $rowIds;
}
/**
diff --git
a/extensions/Wikibase/client/tests/phpunit/includes/Usage/Sql/EntityUsageTableTest.php
b/extensions/Wikibase/client/tests/phpunit/includes/Usage/Sql/EntityUsageTableTest.php
index 7faf802..ff8d310 100644
---
a/extensions/Wikibase/client/tests/phpunit/includes/Usage/Sql/EntityUsageTableTest.php
+++
b/extensions/Wikibase/client/tests/phpunit/includes/Usage/Sql/EntityUsageTableTest.php
@@ -130,11 +130,13 @@
$usages = [
new EntityUsage( $q3, EntityUsage::SITELINK_USAGE ),
+ new EntityUsage( $q3, EntityUsage::LABEL_USAGE, 'de' ),
+ new EntityUsage( $q3, EntityUsage::OTHER_USAGE ),
new EntityUsage( $q3, EntityUsage::LABEL_USAGE ),
new EntityUsage( $q4, EntityUsage::LABEL_USAGE ),
];
- $usageTable = $this->getEntityUsageTable();
+ $usageTable = $this->getEntityUsageTable( /* $batchSize = */ 2
);
// Adding usages should put them into the database
$usageTable->addUsages( 23, $usages );
@@ -142,10 +144,12 @@
$rows = $this->getUsageRows( 23, $usages );
$this->assertUsageTableContains( $rows );
- $usageTable->removeUsages( 23, [ $usages[0] ] );
+ // Test batching by removing more usages than $batchSize
+ $usageTable->removeUsages( 23, [ $usages[0], $usages[2],
$usages[3] ] );
- $this->assertUsageTableDoesNotContain( array_slice( $rows, 0, 1
) );
- $this->assertUsageTableContains( array_slice( $rows, 1 ) );
+ $rows = array_values( $rows );
+ $this->assertUsageTableDoesNotContain( [ $rows[0], $rows[2],
$rows[3] ] );
+ $this->assertUsageTableContains( [ $rows[1], $rows[4] ] );
}
private function getUsageStrings( array $usages ) {
diff --git a/extensions/Wikibase/lib/i18n/sr-ec.json
b/extensions/Wikibase/lib/i18n/sr-ec.json
index a50e87f..5c4f2a9 100644
--- a/extensions/Wikibase/lib/i18n/sr-ec.json
+++ b/extensions/Wikibase/lib/i18n/sr-ec.json
@@ -25,20 +25,26 @@
"wikibase-error-ui-edit-conflict": "Дошло је до сукоба измена. Сачувате
измене на локалном нивоу, поново учитајте страницу и сачувајте их.",
"wikibase-language-fallback-transliteration-hint": "$1
(транслитерација)",
"wikibase-quantitydetails-amount": "Количина",
+ "wikibase-quantitydetails-upperbound": "Горња граница",
+ "wikibase-quantitydetails-lowerbound": "Доња граница",
"wikibase-quantitydetails-unit": "Јединица",
"wikibase-timedetails-time": "време",
+ "wikibase-timedetails-isotime": "Време и датум",
"wikibase-timedetails-timezone": "Временска зона",
"wikibase-timedetails-calendar": "Календар",
+ "wikibase-timedetails-precision": "Прецизност",
"wikibase-timedetails-before": "Пре",
"wikibase-timedetails-after": "После",
"wikibase-globedetails-longitude": "Географска дужина",
"wikibase-globedetails-latitude": "Географска ширина",
+ "wikibase-globedetails-precision": "Прецизност",
"wikibase-sitelinks-wikipedia": "Википедија",
"wikibase-sitelinks-sitename-columnheading": "Језик",
"wikibase-sitelinks-link-columnheading": "Повезана страница",
"wikibase-snakview-snaktypeselector-somevalue": "непозната вредност",
"wikibase-snakview-snaktypeselector-novalue": "нема вредности",
"wikibase-tooltip-error-details": "Детаљи",
+ "wikibase-validator-invalid": "Погрешна вредност",
"wikibase-validator-bad-type": "$2 уместо $1",
"wikibase-validator-too-long": "Не сме бити дуже од {{PLURAL:$1|једног
знака|$1 знакова}}",
"wikibase-validator-too-short": "Мора бити најмање {{PLURAL:$1|један
знак|$1 знакова}} дуго",
@@ -47,6 +53,10 @@
"wikibase-validator-bad-entity-type": "Неочекивана врста ентитета $1",
"wikibase-validator-no-such-entity": "$1 није пронађено",
"wikibase-validator-no-such-property": "Својство $1 није пронађено",
+ "wikibase-validator-bad-value": "Искварена вредност података: $1",
+ "wikibase-validator-bad-value-type": "Погрешна врста података $1,
очекивано $2",
+ "wikibase-validator-bad-data-type": "Погрешна врста података: $1",
+ "wikibase-validator-unknown-unit": "Непозната јединица: $1",
"wikibase-validator-not-allowed": "Недозвољена вредност: $1",
"wikibase-validator-no-validators": "Забрањено",
"datatypes-type-wikibase-item": "ставка",
@@ -63,8 +73,14 @@
"wikibase-time-precision-BCE-Mannum": "$1 милиона година п.н.е.",
"wikibase-time-precision-BCE-annum": "{{PLURAL:$1|$1 године|$1 година}}
п.н.е.",
"wikibase-snakformatter-valuetype-mismatch": "Врста вредности „$1“
непоклапа се са врстом својства „$2“.",
+ "wikibase-snakformatter-formatting-exception": "Грешка форматирања:
$1.",
"wikibase-entity-summary-wbsetitem": "Направљена нова ставка",
+ "wikibase-entity-summary-wbcreate-new": "Направљена нова ставка",
"wikibase-entity-summary-wbcreateredirect": "Преусмерено на $4",
+ "wikibase-entity-summary-wbeditentity": "Направљена нова ставка",
+ "wikibase-entity-summary-wbeditentity-create": "Направљена нова ставка",
+ "wikibase-entity-summary-wbeditentity-update": "Измењена ставка",
+ "wikibase-entity-summary-wbeditentity-override": "Очишћена ставка",
"wikibase-entity-summary-wbsetreference": "Унета референца",
"wikibase-entity-summary-wbsetreference-add": "Додата референца за
тврдњу",
"wikibase-entity-summary-wbsetreference-set": "Промењена референца за
тврдњу:",
diff --git a/extensions/Wikibase/repo/i18n/ko.json
b/extensions/Wikibase/repo/i18n/ko.json
index dc9c359..0d0f4b1 100644
--- a/extensions/Wikibase/repo/i18n/ko.json
+++ b/extensions/Wikibase/repo/i18n/ko.json
@@ -281,6 +281,7 @@
"wikibase-mylanguagefallbackchain-text": "개체의 레이블을 표시하는 데 사용되는 언어 폴백
체인을 아래에 보여줍니다.",
"wikibase-mylanguagefallbackchain-babel": "{{GENDER:$1|자신의}}
[[Special:MyPage|사용자 문서]]에 <nowiki>{{#babel: }}</nowiki>을 넣어 편집할 수 있습니다.",
"wikibase-mylanguagefallbackchain-converted-item": "$1 - $2, $3 - $4에서
변환됨",
+ "wikibase-api-no-such-entity": "ID \"$1\"의 엔티티를 찾을 수 없습니다.",
"wikibase-api-no-such-sitelink": "배지 편집을 시도할 때 \"$1\"에 대한 사이트링크를 찾을 수
없었습니다.",
"wikibase-api-not-recognized-datatype": "자료형을 예측했으나 존재하지 않거나 인식하지
못했습니다.",
"wikibase-self-conflict-patched": "편집을 최신 버전으로 고쳤으며 중간 바뀜이 무시됩니다.",
@@ -338,6 +339,8 @@
"apihelp-wbparsevalue-summary": "<code>ValueParser</code>를 사용하여 값의 구문을
분석합니다.",
"apihelp-wbremovequalifiers-param-bot": "이 편집을 봇으로 표시합니다. 이 URL 플래그는
사용자가 그룹 \"{{int:group-bot}}\"에 속해 있을 경우에만 준수합니다.",
"apihelp-wbremovereferences-param-bot": "이 편집을 봇으로 표시합니다. 이 URL 플래그는
사용자가 그룹 \"{{int:group-bot}}\"에 속해 있을 경우에만 준수합니다.",
+ "apihelp-wbsearchentities-param-props": "각 엔티티마다 이 속성들을 반환합니다.",
+ "apihelp-wbsearchentities-example-5": "URL 변수를 제외하고 영어로 \"alphabet\"을
검색합니다",
"apihelp-wbsetaliases-param-bot": "이 편집을 봇으로 표시합니다. 이 URL 플래그는 사용자가 그룹
\"{{int:group-bot}}\"에 속해 있을 경우에만 준수합니다.",
"apihelp-wbsetclaim-param-bot": "이 편집을 봇으로 표시합니다. 이 URL 플래그는 사용자가 그룹
\"{{int:group-bot}}\"에 속해 있을 경우에만 준수합니다.",
"apihelp-wbsetclaimvalue-param-bot": "이 편집을 봇으로 표시합니다. 이 URL 플래그는 사용자가
그룹 \"{{int:group-bot}}\"에 속해 있을 경우에만 준수합니다.",
diff --git a/extensions/Wikibase/repo/i18n/sr-ec.json
b/extensions/Wikibase/repo/i18n/sr-ec.json
index 63eeedf..19032eb 100644
--- a/extensions/Wikibase/repo/i18n/sr-ec.json
+++ b/extensions/Wikibase/repo/i18n/sr-ec.json
@@ -43,6 +43,9 @@
"wikibase-content-language-edit-label": "Језик:",
"wikibase-diffview-reference": "референца",
"wikibase-diffview-rank": "ранг",
+ "wikibase-diffview-rank-preferred": "Пожељни ранг",
+ "wikibase-diffview-rank-normal": "Нормални ранг",
+ "wikibase-diffview-rank-deprecated": "Застарели ранг",
"wikibase-diffview-qualifier": "квалификатор",
"wikibase-diffview-label": "назив",
"wikibase-diffview-alias": "псеудоними",
@@ -115,7 +118,9 @@
"wikibase-itembytitle-submit": "Претражи",
"wikibase-itembytitle-create": "Можете такође и [$1 направити ставку].",
"wikibase-gotolinkedpage-lookup-site": "Сајт:",
+ "wikibase-gotolinkedpage-lookup-item": "Ознака ставке:",
"wikibase-gotolinkedpage-submit": "Иди",
+ "wikibase-gotolinkedpage-error-item-not-found": "Ставка није пронађена",
"special-itemdisambiguation": "Вишезначна ставка",
"wikibase-itemdisambiguation-lookup-fieldset": "Претрага ставки према
језику и називу",
"wikibase-itemdisambiguation-lookup-language": "Код језика:",
@@ -129,8 +134,8 @@
"wikibase-newproperty-datatype": "Врста податка:",
"wikibase-newproperty-invalid-datatype": "Назначена је неважећа врста
податка.",
"wikibase-newproperty-pick-data-type": "(одаберите тип података)",
- "wikibase-description-helppage": "Помоћ:Опис",
- "wikibase-label-helppage": "Помоћ:Назив",
+ "wikibase-description-helppage": "Help:Опис",
+ "wikibase-label-helppage": "Help:Назив",
"special-newitem": "Нова ставка",
"wikibase-newitem-summary": "Обавезно проверите [[Special:Search|да ли
ставка већ постоји]]!<br />Требало би да додате
[[{{int:Wikibase-label-helppage}}|назив]] и
[[{{int:Wikibase-description-helppage}}|опис]] за све нове ставке.",
"wikibase-newitem-fieldset": "Прављење нове ставке",
@@ -158,12 +163,17 @@
"wikibase-setlabeldescriptionaliases-description-label": "Опис:",
"wikibase-setlabeldescriptionaliases-aliases-label": "Псеудоними:",
"wikibase-setlabeldescriptionaliases-submit": "Поставите назив, опис и
псеудониме",
+ "wikibase-setsitelink-site": "Ознака сајта:",
"wikibase-setsitelink-label": "Веза странице:",
"wikibase-setsitelink-badges": "Значке:",
"wikibase-modifyentity-id": "ИД:",
"wikibase-modifyterm-language": "Код језика:",
+ "special-mergeitems": "Спој две ставке",
+ "wikibase-mergeitems-fromid": "Идентификатор за спајање од",
+ "wikibase-mergeitems-toid": "Идентификатор за спајање у",
"wikibase-mergeitems-submit": "Споји ставке",
"wikibase-mergeitems-success": "$1 је спојена у $3 и преусмерена.",
+ "wikibase-itemmerge-permissiondenied": "Приступ је одбијен.",
"wikibase-itemmerge-no-such-entity": "Ставка није пронађена.",
"special-dispatchstats": "Статистика дневника отпрема",
"wikibase-dispatchstats-no-stats": "Тренутно нема расположивих
статистика.",
@@ -206,6 +216,7 @@
"wikibase-entitydata-unsupported-format": "Формат података $1 не
подржава овај интерфејс.",
"wikibase-entitydata-title": "Подаци за унос",
"wikibase-entitydata-text": "Ова страница садржи интерфејс повезаних
података до вредности ентитета. Молимо да повежете ID ентитета у URL, користећи
синтаксу подстранице.\n* Преговарање око садржаја се примењује на основу
клијентовог заглавља Прихвати. Ово значи да ће подаци за ентитете да буду дати
у формату који је одабрао Ваш клијент. За веб-прегледаче, ово ће да буде HTML,
због чега ће Ваш прегледач да преусмери до обичне странице ентитета.\n* Можете
експлицитно захтевати одређени формат података додавањем припадајуће екстензије
датотеке на ID ентитета: Q23.json ће вратити податке у JSON формату, Q23.ttl ће
вратити RDF/Turtle итд. Подржани формати су: $1.",
+ "wikibase-entitypage-bad-id": "Неисправан идентификатор: $1.",
"wikibase-redirectentity-success": "$1 је успешно преусмерено на $2.",
"wikibase-redirectentity-submit": "Преусмерење",
"wikibase-mylanguagefallbackchain-converted-item": "$1 - $2, претворено
из $3 - $4",
@@ -242,5 +253,13 @@
"wikibase-pageinfo-subscription-none": "Нема",
"apihelp-wbeditentity-example-12": "Уклања назив",
"apihelp-wbmergeitems-description": "Спаја више ставки.",
- "apihelp-wbmergeitems-param-toid": "Идентификатор за спајање са"
+ "apihelp-wbmergeitems-param-toid": "Идентификатор за спајање са",
+ "apihelp-wbsearchentities-param-search": "Претрага за овај текст.",
+ "apihelp-wbsearchentities-param-language": "Претрага на овом језику.",
+ "apihelp-wbsearchentities-param-limit": "Максимални број резултата",
+ "apihelp-query+wbsearch-param-search": "Претрага за овај текст.",
+ "apihelp-query+wbsearch-param-language": "Претрага на овом језику.",
+ "apihelp-query+wbsearch-param-limit": "Максимални број резултата",
+ "apihelp-query+wbsubscribers-param-limit": "Максимални број резултата",
+ "apihelp-wbsetdescription-param-language": "Језик описа"
}
diff --git a/extensions/Wikibase/repo/includes/Specials/SpecialNewEntity.php
b/extensions/Wikibase/repo/includes/Specials/SpecialNewEntity.php
index 86a193d..ed93d41 100644
--- a/extensions/Wikibase/repo/includes/Specials/SpecialNewEntity.php
+++ b/extensions/Wikibase/repo/includes/Specials/SpecialNewEntity.php
@@ -75,7 +75,7 @@
* @see SpecialPage::isListed()
*/
public function isListed() {
- return (bool)$this->entityNamespaceLookup->getEntityNamespace(
$this->getEntityType() );
+ return $this->entityNamespaceLookup->getEntityNamespace(
$this->getEntityType() ) !== null;
}
/**
diff --git a/extensions/Wikibase/repo/maintenance/dispatchChanges.php
b/extensions/Wikibase/repo/maintenance/dispatchChanges.php
index 0dfc063..7189bda 100644
--- a/extensions/Wikibase/repo/maintenance/dispatchChanges.php
+++ b/extensions/Wikibase/repo/maintenance/dispatchChanges.php
@@ -8,6 +8,7 @@
use MediaWiki\MediaWikiServices;
use MWException;
use MWExceptionHandler;
+use UnexpectedValueException;
use Wikibase\Lib\Reporting\ObservableMessageReporter;
use Wikibase\Lib\Reporting\ReportingExceptionHandler;
use Wikibase\Lib\Store\Sql\EntityChangeLookup;
@@ -17,6 +18,7 @@
use Wikibase\Repo\Store\Sql\LockManagerSqlChangeDispatchCoordinator;
use Wikibase\Store\Sql\SqlChangeDispatchCoordinator;
use Wikibase\Store\Sql\SqlSubscriptionLookup;
+use Wikimedia\Assert\Assert;
$basePath = getenv( 'MW_INSTALL_PATH' ) !== false ? getenv( 'MW_INSTALL_PATH'
) : __DIR__ . '/../../../..';
@@ -64,18 +66,34 @@
}
/**
- * @param SettingsArray $settings
+ * @param string[] $clientWikis as defined in the localClientDatabases
config setting.
*
* @return string[] A mapping of client wiki site IDs to logical
database names.
*/
- private function getClientWikis( SettingsArray $settings ) {
- $clientWikis = $settings->getSetting( 'localClientDatabases' );
+ private function getClientWikis( array $clientWikis ) {
+ Assert::parameterElementType( 'string', $clientWikis,
'$clientWikis' );
// make sure we have a mapping from siteId to database name in
clientWikis:
foreach ( $clientWikis as $siteID => $dbName ) {
if ( is_int( $siteID ) ) {
unset( $clientWikis[$siteID] );
- $clientWikis[$dbName] = $dbName;
+ $siteID = $dbName;
+ }
+ $clientWikis[$siteID] = $dbName;
+ }
+
+ // If this repo is also a client, make sure it dispatches also
to itself.
+ if ( WikibaseSettings::isClientEnabled() ) {
+ $clientSettings = WikibaseSettings::getClientSettings();
+ $repoName = $clientSettings->getSetting( 'repoSiteId' );
+ $repoDb = $clientSettings->getSetting( 'repoDatabase' );
+
+ if ( $repoDb === false ) {
+ $repoDb =
MediaWikiServices::getInstance()->getMainConfig()->get( 'DBname' );
+ }
+
+ if ( !isset( $clientWikis[$repoName] ) ) {
+ $clientWikis[$repoName] = $repoDb;
}
}
@@ -165,7 +183,10 @@
$delay = (int)$this->getOption( 'idle-delay', 10 );
$wikibaseRepo = WikibaseRepo::getDefaultInstance();
- $clientWikis = $this->getClientWikis(
$wikibaseRepo->getSettings() );
+
+ $clientWikis = $this->getClientWikis(
+ $wikibaseRepo->getSettings()->getSetting(
'localClientDatabases' )
+ );
if ( empty( $clientWikis ) ) {
throw new MWException( "No client wikis configured!
Please set \$wgWBRepoSettings['localClientDatabases']." );
diff --git a/vendor/composer/installed.json b/vendor/composer/installed.json
index 4cbdb73..ddb4da9 100644
--- a/vendor/composer/installed.json
+++ b/vendor/composer/installed.json
@@ -1380,12 +1380,12 @@
"source": {
"type": "git",
"url":
"https://github.com/wikimedia/mediawiki-extensions-Wikibase.git",
- "reference": "83ce335686dbd44384d9e5704191e32dd286da51"
+ "reference": "10974ed2f854d8590ef4feed325d32f190bf48b8"
},
"dist": {
"type": "zip",
- "url":
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/83ce335686dbd44384d9e5704191e32dd286da51",
- "reference": "83ce335686dbd44384d9e5704191e32dd286da51",
+ "url":
"https://api.github.com/repos/wikimedia/mediawiki-extensions-Wikibase/zipball/10974ed2f854d8590ef4feed325d32f190bf48b8",
+ "reference": "10974ed2f854d8590ef4feed325d32f190bf48b8",
"shasum": ""
},
"require": {
@@ -1418,7 +1418,7 @@
"jakub-onderka/php-parallel-lint": ">=0.3 <0.10",
"wikibase/wikibase-codesniffer": "^0.1.0"
},
- "time": "2017-07-27 21:24:03",
+ "time": "2017-07-30 08:58:55",
"type": "mediawiki-extension",
"installation-source": "dist",
"autoload": {
@@ -1699,7 +1699,7 @@
"source": {
"type": "git",
"url":
"https://gerrit.wikimedia.org/r/mediawiki/extensions/WikibaseQuality",
- "reference": "1e4dfadae8a41c5794d0670c83bf28243b2e2481"
+ "reference": "22aafec778ad7605863090758753c21e79ed44df"
},
"require": {
"php": ">=5.5.9",
@@ -1719,7 +1719,7 @@
"wikibase/data-model-serialization": ">=0.1 <3.0",
"wikibase/wikibase-codesniffer": "^0.1.0"
},
- "time": "2017-07-26 20:59:16",
+ "time": "2017-07-28 20:48:10",
"type": "mediawiki-extension",
"installation-source": "source",
"autoload": {
@@ -1768,7 +1768,7 @@
"source": {
"type": "git",
"url":
"https://gerrit.wikimedia.org/r/mediawiki/extensions/WikibaseQualityConstraints",
- "reference": "744bc12339f0d6567ce2790ffd01d73b9f60310a"
+ "reference": "ebbaf106782b8e6c6639a6edcb02587b8e7bfeaf"
},
"require": {
"php": ">=5.5.9",
@@ -1784,7 +1784,7 @@
"satooshi/php-coveralls": "master-dev",
"wikibase/wikibase-codesniffer": "^0.1.0"
},
- "time": "2017-07-27 21:24:23",
+ "time": "2017-07-28 20:48:18",
"type": "mediawiki-extension",
"installation-source": "source",
"autoload": {
--
To view, visit https://gerrit.wikimedia.org/r/368580
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I1f5ae8790678e67d04ba577195a12a4eacf4cfe0
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