jenkins-bot has submitted this change and it was merged. (
https://gerrit.wikimedia.org/r/384737 )
Change subject: Add 'titles' object to MCS summary output
......................................................................
Add 'titles' object to MCS summary output
Also adds an ns_text field to the lead object in the formatted* routes
in mobile-sections.js, since summaries now depend on it.
Bug: T164291
Change-Id: I0b81eefaff2eed154b1c8fa2ad51a80c3c58b69f
---
M lib/mobile-util.js
M lib/mwapi.js
M routes/mobile-sections.js
M
test/diff/results/page_formatted-enwiki-User%3ABSitzmann_(WMF)_MCS_Test_Frankenstein.json
M
test/diff/results/page_formatted-enwiki-User%3ABSitzmann_(WMF)_MCS_Test_TitleLinkEncoding.json
M
test/diff/results/page_mobile-sections-enwiki-User%3ABSitzmann_(WMF)_MCS_Test_Frankenstein.json
M
test/diff/results/page_mobile-sections-enwiki-User%3ABSitzmann_(WMF)_MCS_Test_TitleLinkEncoding.json
M test/features/summary/pagecontent.js
A test/fixtures/formatted-lead-Β-lactam_antibiotic.json
A test/fixtures/siteinfo_enwiki.json
10 files changed, 347 insertions(+), 9 deletions(-)
Approvals:
BearND: Looks good to me, approved
jenkins-bot: Verified
diff --git a/lib/mobile-util.js b/lib/mobile-util.js
index cee4c5d..ca5a723 100644
--- a/lib/mobile-util.js
+++ b/lib/mobile-util.js
@@ -202,6 +202,22 @@
return request.uri;
};
+/**
+ * Builds a dictionary containing the various forms of a page title that a
client may need.
+ * @param {!Object} title a mediawiki-title Title object constructed from a
page title string
+ * @param {!Object} lead a page lead object from buildLeadObject in
mobile-sections.js
+ * @return {!Object} a set of useful page title strings
+ */
+mUtil.buildTitleDictionary = function(title, lead) {
+ return {
+ title: title.getPrefixedDBKey(),
+ normalized_title: lead.normalizedtitle,
+ display_title: lead.displaytitle,
+ namespace_id: lead.ns,
+ namespace_name: lead.ns_text,
+ };
+};
+
mUtil.throw404 = function(message) {
throw new HTTPError({
status: 404,
diff --git a/lib/mwapi.js b/lib/mwapi.js
index 6742492..8572593 100644
--- a/lib/mwapi.js
+++ b/lib/mwapi.js
@@ -236,6 +236,7 @@
thumbnail: page.thumbnail,
originalimage: page.original,
ns: page.ns,
+ ns_text: res.siteinfo.namespaces[page.ns].name,
protection,
editable: !protection.edit,
mainpage,
@@ -376,11 +377,14 @@
/**
* Get a Title object for a MW title string
+ * @param {!Object} app the application object
+ * @param {!Object} req the Request object
+ * @param {!string} title a MediaWiki page title string
+ * @return {!Object} a mediawiki-title Title object that can be used to obtain
a db-normalized title
*
- * TODO: This is copied nearly verbatim from restbase/lib/mwUtil.js. Should we
- * put it somewhere we can share it?
+ * TODO: This is copied nearly verbatim from restbase/lib/mwUtil.js. Can we
share it somewhere?
*/
-mwapi.getTitleObj = function(app, req, title) {
+mwapi.getTitleObj = function(app, req, title = req.params.title) {
return mwapi.getSiteInfo(app, req)
.then((siteInfo) => {
return Title.newFromText(title, siteInfo);
diff --git a/routes/mobile-sections.js b/routes/mobile-sections.js
index d9e018f..49bc129 100644
--- a/routes/mobile-sections.js
+++ b/routes/mobile-sections.js
@@ -127,6 +127,7 @@
return {
ns: input.meta.ns,
+ ns_text: input.meta.ns_text,
contentmodel,
userinfo: input.meta.userinfo,
imageinfo: input.meta.imageinfo,
@@ -375,7 +376,6 @@
});
}
-
/*
* Build a summary for the page given in req
* @param {!Request} req
@@ -384,8 +384,13 @@
* @return {!BBPromise}
*/
function buildSummary(req) {
- return buildLeadObject(req, false).then((lead) => {
+ return BBPromise.props({
+ title: mwapi.getTitleObj(app, req),
+ lead: buildLeadObject(req, false)
+ }).then((response) => {
let summary = {};
+ const title = response.title;
+ const lead = response.lead;
const type = 'standard';
let code = 200;
@@ -406,6 +411,7 @@
type,
title: lead.normalizedtitle,
displaytitle: lead.displaytitle,
+ titles: mUtil.buildTitleDictionary(title, lead),
pageid: lead.id,
thumbnail: lead.thumbnail,
originalimage: lead.originalimage,
diff --git
"a/test/diff/results/page_formatted-enwiki-User%3ABSitzmann_\050WMF\051_MCS_Test_Frankenstein.json"
"b/test/diff/results/page_formatted-enwiki-User%3ABSitzmann_\050WMF\051_MCS_Test_Frankenstein.json"
index 2a1e9c4..4e58376 100644
---
"a/test/diff/results/page_formatted-enwiki-User%3ABSitzmann_\050WMF\051_MCS_Test_Frankenstein.json"
+++
"b/test/diff/results/page_formatted-enwiki-User%3ABSitzmann_\050WMF\051_MCS_Test_Frankenstein.json"
@@ -1,6 +1,7 @@
{
"lead": {
"ns": 2,
+ "ns_text": "User",
"id": 53626841,
"revision": "778666613",
"displaytitle": "User:BSitzmann (WMF)/MCS/Test/Frankenstein",
diff --git
"a/test/diff/results/page_formatted-enwiki-User%3ABSitzmann_\050WMF\051_MCS_Test_TitleLinkEncoding.json"
"b/test/diff/results/page_formatted-enwiki-User%3ABSitzmann_\050WMF\051_MCS_Test_TitleLinkEncoding.json"
index 93d06ee..607c505 100644
---
"a/test/diff/results/page_formatted-enwiki-User%3ABSitzmann_\050WMF\051_MCS_Test_TitleLinkEncoding.json"
+++
"b/test/diff/results/page_formatted-enwiki-User%3ABSitzmann_\050WMF\051_MCS_Test_TitleLinkEncoding.json"
@@ -1,6 +1,7 @@
{
"lead": {
"ns": 2,
+ "ns_text": "User",
"id": 51184092,
"revision": "743079682",
"displaytitle": "User:BSitzmann (WMF)/MCS/Test/TitleLinkEncoding",
diff --git
"a/test/diff/results/page_mobile-sections-enwiki-User%3ABSitzmann_\050WMF\051_MCS_Test_Frankenstein.json"
"b/test/diff/results/page_mobile-sections-enwiki-User%3ABSitzmann_\050WMF\051_MCS_Test_Frankenstein.json"
index ed91a59..0530be2 100644
---
"a/test/diff/results/page_mobile-sections-enwiki-User%3ABSitzmann_\050WMF\051_MCS_Test_Frankenstein.json"
+++
"b/test/diff/results/page_mobile-sections-enwiki-User%3ABSitzmann_\050WMF\051_MCS_Test_Frankenstein.json"
@@ -1,6 +1,7 @@
{
"lead": {
"ns": 2,
+ "ns_text": "User",
"id": 53626841,
"revision": "778666613",
"displaytitle": "User:BSitzmann (WMF)/MCS/Test/Frankenstein",
diff --git
"a/test/diff/results/page_mobile-sections-enwiki-User%3ABSitzmann_\050WMF\051_MCS_Test_TitleLinkEncoding.json"
"b/test/diff/results/page_mobile-sections-enwiki-User%3ABSitzmann_\050WMF\051_MCS_Test_TitleLinkEncoding.json"
index 52bff51..da0c046 100644
---
"a/test/diff/results/page_mobile-sections-enwiki-User%3ABSitzmann_\050WMF\051_MCS_Test_TitleLinkEncoding.json"
+++
"b/test/diff/results/page_mobile-sections-enwiki-User%3ABSitzmann_\050WMF\051_MCS_Test_TitleLinkEncoding.json"
@@ -1,6 +1,7 @@
{
"lead": {
"ns": 2,
+ "ns_text": "User",
"id": 51184092,
"revision": "743079682",
"displaytitle": "User:BSitzmann (WMF)/MCS/Test/TitleLinkEncoding",
diff --git a/test/features/summary/pagecontent.js
b/test/features/summary/pagecontent.js
index 9a2f57f..53f96d3 100644
--- a/test/features/summary/pagecontent.js
+++ b/test/features/summary/pagecontent.js
@@ -1,9 +1,14 @@
'use strict';
-const preq = require('preq');
+const preq = require('preq');
+const Title = require('mediawiki-title').Title;
const assert = require('../../utils/assert.js');
const headers = require('../../utils/headers.js');
const server = require('../../utils/server.js');
+const mUtil = require('../../../lib/mobile-util');
+
+const blaLead =
require('../../fixtures/formatted-lead-Β-lactam_antibiotic.json');
+const siteinfo = require('../../fixtures/siteinfo_enwiki.json');
describe('summary', function() {
@@ -21,13 +26,30 @@
});
it('should respond with expected properties in payload', () => {
+
const uri = localUri('Foobar/798652007');
return preq.get({ uri })
.then((res) => {
- assert.equal(res.status, 200);
- assert.equal(res.body.type, 'standard');
- assert.equal(res.body.revision, 798652007);
+ assert.deepEqual(res.status, 200);
+ assert.deepEqual(res.body.type, 'standard');
+ assert.deepEqual(res.body.revision, 798652007);
+ assert.deepEqual(res.body.titles.title, "Foobar");
+ assert.deepEqual(res.body.titles.normalized_title, "Foobar");
+ assert.deepEqual(res.body.titles.display_title, "Foobar");
+ assert.deepEqual(res.body.titles.namespace_id, 0);
+ assert.deepEqual(res.body.titles.namespace_name, "");
assert.ok(res.body.extract.indexOf('foobar') > -1);
+ assert.ok(res.body.extract_html.indexOf('<b>foobar</b>') > -1);
});
});
+
+ it('titles dictionary contains all required fields', () => {
+ const title = Title.newFromText('Β-lactam_antibiotic', siteinfo);
+ const result = mUtil.buildTitleDictionary(title, blaLead);
+ assert.deepEqual(result.title, "Β-lactam_antibiotic");
+ assert.deepEqual(result.normalized_title, "Β-lactam antibiotic");
+ assert.deepEqual(result.display_title, "β-lactam antibiotic");
+ assert.deepEqual(result.namespace_id, 0);
+ assert.deepEqual(result.namespace_name, "");
+ });
});
diff --git "a/test/fixtures/formatted-lead-\316\222-lactam_antibiotic.json"
"b/test/fixtures/formatted-lead-\316\222-lactam_antibiotic.json"
new file mode 100644
index 0000000..02cd620
--- /dev/null
+++ "b/test/fixtures/formatted-lead-\316\222-lactam_antibiotic.json"
@@ -0,0 +1,31 @@
+{
+ "ns": 0,
+ "ns_text": "",
+ "id": 52784,
+ "revision": "801345149",
+ "lastmodified": "2017-09-19T03:33:47Z",
+ "lastmodifier": {
+ "user": "KolbertBot",
+ "gender": "unknown"
+ },
+ "displaytitle": "β-lactam antibiotic",
+ "normalizedtitle": "Β-lactam antibiotic",
+ "wikibase_item": "Q306264",
+ "description": "class of broad-spectrum antibiotics, consisting of all
antibiotic agents that contain a β-lactam ring in their molecular structures.
This includes penicillin derivatives (penams), cephalosporins (cephems),
monobactams, and carbapenems",
+ "protection": {},
+ "editable": true,
+ "languagecount": 35,
+ "image": {
+ "file": "Beta-lactam_antibiotics_example_1.svg",
+ "urls": {
+ "320":
"//upload.wikimedia.org/wikipedia/commons/thumb/d/d8/Beta-lactam_antibiotics_example_1.svg/320px-Beta-lactam_antibiotics_example_1.svg.png",
+ "640":
"//upload.wikimedia.org/wikipedia/commons/thumb/d/d8/Beta-lactam_antibiotics_example_1.svg/640px-Beta-lactam_antibiotics_example_1.svg.png",
+ "800":
"//upload.wikimedia.org/wikipedia/commons/thumb/d/d8/Beta-lactam_antibiotics_example_1.svg/678px-Beta-lactam_antibiotics_example_1.svg.png",
+ "1024":
"//upload.wikimedia.org/wikipedia/commons/thumb/d/d8/Beta-lactam_antibiotics_example_1.svg/678px-Beta-lactam_antibiotics_example_1.svg.png"
+ }
+ },
+ "hatnotes": [],
+ "infobox": "<table class=\"infobox\"><tbody><tr><th colspan=\"2\"
style=\"text-align:center;font-size:125%;font-weight:bold;background-color:
\n#ddbbee\">β-lactam antibiotic<br>Beta-lactam antibiotic</th></tr><tr><td
colspan=\"2\" style=\"text-align:center\">\n<i><a href=\"./Drug_class\"
title=\"Drug class\">Drug class</a></i></td></tr><tr><td colspan=\"2\"
style=\"text-align:center\">\n<p><span class=\"mw-default-size\"><a
href=\"./File:Beta-lactam_antibiotics_example_1.svg\"><img
src=\"//upload.wikimedia.org/wikipedia/commons/thumb/d/d8/Beta-lactam_antibiotics_example_1.svg/280px-Beta-lactam_antibiotics_example_1.svg.png\"
data-file-type=\"drawing\" height=\"423\" width=\"280\"
srcset=\"//upload.wikimedia.org/wikipedia/commons/thumb/d/d8/Beta-lactam_antibiotics_example_1.svg/560px-Beta-lactam_antibiotics_example_1.svg.png
2x,
//upload.wikimedia.org/wikipedia/commons/thumb/d/d8/Beta-lactam_antibiotics_example_1.svg/420px-Beta-lactam_antibiotics_example_1.svg.png
1.5x\"></a></span></p><div>Core structure of <a href=\"./Penicillin\"
title=\"Penicillin\">penicillins</a> (top) and <a href=\"./Cephalosporin\"
title=\"Cephalosporin\">cephalosporins</a> (bottom). <a href=\"./Β-lactam\"
title=\"Β-lactam\" class=\"mw-redirect\">β-lactam</a> ring in
red.</div></td></tr><tr><th colspan=\"2\" style=\"text-align:center;background:
#e8e8e8;\">Class identifiers</th></tr><tr><th
scope=\"row\">Use</th><td>\nBacterial infection</td></tr><tr><th
scope=\"row\"><a
href=\"./Anatomical_Therapeutic_Chemical_Classification_System\"
title=\"Anatomical Therapeutic Chemical Classification System\">ATC
code</a></th><td>\n<a href=\"./ATC_code_J01C\" title=\"ATC code J01C\"
class=\"mw-redirect\">J01C</a></td></tr><tr><th scope=\"row\"><a
href=\"./Biological_target\" title=\"Biological target\">Biological
target</a></th><td>\n<a href=\"./Penicillin_binding_protein\"
title=\"Penicillin binding protein\" class=\"mw-redirect\">Penicillin binding
protein</a></td></tr><tr><th colspan=\"2\"
style=\"text-align:center;background: #e8e8e8;\">External
links</th></tr><tr><th scope=\"row\"><a href=\"./Medical_Subject_Headings\"
title=\"Medical Subject Headings\">MeSH</a></th><td>\n<span class=\"reflink
plainlinks nourlexpansion\"><a rel=\"mw:ExtLink\"
href=\"https://www.nlm.nih.gov/cgi/mesh/2011/MB_cgi?field=uid&term=D047090\">D047090</a></span></td></tr><tr><td
colspan=\"2\" style=\"text-align:center;background: #e8e8e8; text-align:
center\">\n<a rel=\"mw:ExtLink\"
href=\"https://www.wikidata.org/wiki/Q306264%20\" title=\"d:Q306264 \">In
Wikidata</a></td></tr></tbody></table>",
+ "intro": "<p><b>β-lactam antibiotics</b> (<b>beta-lactam antibiotics</b>)
are a class of <a href=\"./Broad-spectrum_antibiotic\" title=\"Broad-spectrum
antibiotic\">broad-spectrum antibiotics</a>, consisting of all <a
href=\"./Antibiotic\" title=\"Antibiotic\" class=\"mw-redirect\">antibiotic</a>
agents that contain a <a href=\"./Beta-lactam\"
title=\"Beta-lactam\">beta-lactam</a> ring in their molecular structures. This
includes <a href=\"./Penicillin\" title=\"Penicillin\">penicillin</a>
derivatives (<a href=\"./Penam\" title=\"Penam\">penams</a>), <a
href=\"./Cephalosporin\" title=\"Cephalosporin\">cephalosporins</a> (<a
href=\"./Cephem\" title=\"Cephem\">cephems</a>), <a href=\"./Monobactam\"
title=\"Monobactam\">monobactams</a>, and <a href=\"./Carbapenem\"
title=\"Carbapenem\">carbapenems</a>.<span class=\"mw-ref\"
id=\"cite_ref-pmid10950216_1-0\"><a
href=\"./Β-lactam_antibiotic#cite_note-pmid10950216-1\" style=\"counter-reset:
mw-Ref 1;\"><span class=\"mw-reflink-text\">[1]</span></a></span> Most β-lactam
antibiotics work by inhibiting <a href=\"./Cell_wall\" title=\"Cell wall\">cell
wall</a> biosynthesis in the bacterial organism and are the most widely used
group of antibiotics. Until 2003, when measured by sales, more than half of all
commercially available antibiotics in use were β-lactam compounds.<span
class=\"mw-ref\" id=\"cite_ref-2\"><a
href=\"./Β-lactam_antibiotic#cite_note-2\" style=\"counter-reset: mw-Ref
2;\"><span class=\"mw-reflink-text\">[2]</span></a></span></p>",
+ "text": "\n\n<p>Bacteria often develop resistance to β-lactam antibiotics by
synthesizing a <a href=\"./Beta-lactamase\"
title=\"Beta-lactamase\">β-lactamase</a>, an enzyme that attacks the β-lactam
ring. To overcome this resistance, β-lactam antibiotics are often given with <a
href=\"./Β-Lactamase_inhibitor\" title=\"Β-Lactamase inhibitor\">β-lactamase
inhibitors</a> such as <a href=\"./Clavulanic_acid\" title=\"Clavulanic
acid\">clavulanic acid</a>.</p>\n\n"
+}
\ No newline at end of file
diff --git a/test/fixtures/siteinfo_enwiki.json
b/test/fixtures/siteinfo_enwiki.json
new file mode 100644
index 0000000..0d4bb07
--- /dev/null
+++ b/test/fixtures/siteinfo_enwiki.json
@@ -0,0 +1,255 @@
+{
+ "general": {
+ "mainpage": "Main Page",
+ "legaltitlechars": " %!\"$&'()*,\\-.\\/0-9:;=?@A-Z\\\\^_`a-z~\\x80-\\xFF+",
+ "case": "first-letter",
+ "lang": "en"
+ },
+ "namespaces": {
+ "0": {
+ "id": 0,
+ "case": "first-letter",
+ "content": "",
+ "*": ""
+ },
+ "1": {
+ "id": 1,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Talk",
+ "*": "Talk"
+ },
+ "2": {
+ "id": 2,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "User",
+ "*": "User"
+ },
+ "3": {
+ "id": 3,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "User talk",
+ "*": "User talk"
+ },
+ "4": {
+ "id": 4,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Project",
+ "*": "Wikipedia"
+ },
+ "5": {
+ "id": 5,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Project talk",
+ "*": "Wikipedia talk"
+ },
+ "6": {
+ "id": 6,
+ "case": "first-letter",
+ "canonical": "File",
+ "*": "File"
+ },
+ "7": {
+ "id": 7,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "File talk",
+ "*": "File talk"
+ },
+ "8": {
+ "id": 8,
+ "case": "first-letter",
+ "canonical": "MediaWiki",
+ "*": "MediaWiki"
+ },
+ "9": {
+ "id": 9,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "MediaWiki talk",
+ "*": "MediaWiki talk"
+ },
+ "10": {
+ "id": 10,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Template",
+ "*": "Template"
+ },
+ "11": {
+ "id": 11,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Template talk",
+ "*": "Template talk"
+ },
+ "12": {
+ "id": 12,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Help",
+ "*": "Help"
+ },
+ "13": {
+ "id": 13,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Help talk",
+ "*": "Help talk"
+ },
+ "14": {
+ "id": 14,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Category",
+ "*": "Category"
+ },
+ "15": {
+ "id": 15,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Category talk",
+ "*": "Category talk"
+ },
+ "100": {
+ "id": 100,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Portal",
+ "*": "Portal"
+ },
+ "101": {
+ "id": 101,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Portal talk",
+ "*": "Portal talk"
+ },
+ "108": {
+ "id": 108,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Book",
+ "*": "Book"
+ },
+ "109": {
+ "id": 109,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Book talk",
+ "*": "Book talk"
+ },
+ "118": {
+ "id": 118,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Draft",
+ "*": "Draft"
+ },
+ "119": {
+ "id": 119,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Draft talk",
+ "*": "Draft talk"
+ },
+ "446": {
+ "id": 446,
+ "case": "first-letter",
+ "canonical": "Education Program",
+ "*": "Education Program"
+ },
+ "447": {
+ "id": 447,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Education Program talk",
+ "*": "Education Program talk"
+ },
+ "710": {
+ "id": 710,
+ "case": "first-letter",
+ "canonical": "TimedText",
+ "*": "TimedText"
+ },
+ "711": {
+ "id": 711,
+ "case": "first-letter",
+ "canonical": "TimedText talk",
+ "*": "TimedText talk"
+ },
+ "828": {
+ "id": 828,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Module",
+ "*": "Module"
+ },
+ "829": {
+ "id": 829,
+ "case": "first-letter",
+ "subpages": "",
+ "canonical": "Module talk",
+ "*": "Module talk"
+ },
+ "2300": {
+ "id": 2300,
+ "case": "first-letter",
+ "canonical": "Gadget",
+ "*": "Gadget"
+ },
+ "2301": {
+ "id": 2301,
+ "case": "first-letter",
+ "canonical": "Gadget talk",
+ "*": "Gadget talk"
+ },
+ "2302": {
+ "id": 2302,
+ "case": "case-sensitive",
+ "canonical": "Gadget definition",
+ "defaultcontentmodel": "GadgetDefinition",
+ "*": "Gadget definition"
+ },
+ "2303": {
+ "id": 2303,
+ "case": "case-sensitive",
+ "canonical": "Gadget definition talk",
+ "*": "Gadget definition talk"
+ },
+ "-2": {
+ "id": -2,
+ "case": "first-letter",
+ "canonical": "Media",
+ "*": "Media"
+ },
+ "-1": {
+ "id": -1,
+ "case": "first-letter",
+ "canonical": "Special",
+ "*": "Special"
+ }
+ },
+ "namespacealiases": [
+ {
+ "id": 4,
+ "*": "WP"
+ },
+ {
+ "id": 5,
+ "*": "WT"
+ },
+ {
+ "id": 6,
+ "*": "Image"
+ },
+ {
+ "id": 7,
+ "*": "Image talk"
+ }
+ ]
+}
\ No newline at end of file
--
To view, visit https://gerrit.wikimedia.org/r/384737
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I0b81eefaff2eed154b1c8fa2ad51a80c3c58b69f
Gerrit-PatchSet: 11
Gerrit-Project: mediawiki/services/mobileapps
Gerrit-Branch: master
Gerrit-Owner: Mholloway <[email protected]>
Gerrit-Reviewer: BearND <[email protected]>
Gerrit-Reviewer: Dbrant <[email protected]>
Gerrit-Reviewer: Fjalapeno <[email protected]>
Gerrit-Reviewer: GWicke <[email protected]>
Gerrit-Reviewer: Jdlrobson <[email protected]>
Gerrit-Reviewer: Mholloway <[email protected]>
Gerrit-Reviewer: Mhurd <[email protected]>
Gerrit-Reviewer: Mobrovac <[email protected]>
Gerrit-Reviewer: Ppchelko <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits