jenkins-bot [Thu, 25 May 2017 21:25:01 +0000 (21:25 +0000)]
Merge "Add missing ampersand to getMultiWithSetCallback() callback"
Timo Tijhof [Thu, 25 May 2017 21:08:24 +0000 (23:08 +0200)]
jquery.makeCollapsible: Restore considering empty <a> as part of toggle
Before
2d95d36a8e, clicks on links inside toggles with non-empty
targets that are not '#', were ignored ("pass through") since they
are not intended for the toggle.
In
2d95d36a8e, this was simplified to ignoring clicks from all <a>
elements inside toggles. However this ignored too much as links
without 'href' attribute are also sometimes used inside toggles
to look like links and have no href-target, which means clicking
them does nothing and is in fact meant to toggle the element.
Restore previous behaviour and restore previous test + add a new
test for this specific case.
Bug: T166298
Change-Id: Ia3a0648f809f94be0977a83b469fbd184aa72aff
jenkins-bot [Thu, 25 May 2017 21:14:56 +0000 (21:14 +0000)]
Merge "Revert "Creating new WMF 1.30.0-wmf.2 branch""
jenkins-bot [Thu, 25 May 2017 21:04:35 +0000 (21:04 +0000)]
Merge "Add kbp language code"
Timo Tijhof [Thu, 25 May 2017 20:55:20 +0000 (22:55 +0200)]
Revert "Creating new WMF 1.30.0-wmf.2 branch"
Also revert the automatic "Update git submodules" commits since then.
This reverts commit
264fc98588a4851324d3e5f2e39ece01e993127e.
Change-Id: Ica6ad77c46cc8a7f6b5576da2580ea9e07ac8637
jenkins-bot [Thu, 25 May 2017 20:44:53 +0000 (20:44 +0000)]
Merge "Fix version of DonationInterface deployed to donatewiki"
Elliott Eggleston [Thu, 25 May 2017 20:13:54 +0000 (13:13 -0700)]
Fix version of DonationInterface deployed to donatewiki
We had deleted some localization strings that donatewiki needs.
Bug: T166302
Change-Id: I27a03a64de80bdf58f7d7f2f69173933aa4b23ea
Translation updater bot [Thu, 25 May 2017 20:00:24 +0000 (22:00 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I0772f5f25bb805291ffee1b8170d22a49c3aa317
jenkins-bot [Thu, 25 May 2017 19:46:45 +0000 (19:46 +0000)]
Merge "MessageCache: Avoid deprecated wfMemcKey()"
jenkins-bot [Thu, 25 May 2017 19:42:12 +0000 (19:42 +0000)]
Merge "rebuildrecentchanges.php: Make purgeFeeds() use the correct cache"
Kunal Mehta [Thu, 25 May 2017 19:26:19 +0000 (12:26 -0700)]
wfIsBadImage: Avoid deprecated wfMemcKey()
Change-Id: I92133ed6a94902bdac2e9723f19a653a9962b757
mdew192837 [Thu, 25 May 2017 01:15:47 +0000 (20:15 -0500)]
rebuildrecentchanges.php: Make purgeFeeds() use the correct cache
ChangesFeed was updated in
3517be1cf0b7, to use the WAN cache,
so this change updates the purgeFeeds() function to use that cache
too.
Avoid the deprected wfMemcKey() too.
Bug: T166195
Change-Id: I28a8d729737f03ccaf069495a59e80401c59e778
Kunal Mehta [Thu, 25 May 2017 19:17:27 +0000 (12:17 -0700)]
User: Avoid deprecated wfMemcKey()
And ObjectCache::getMainWANInstance() while we're at it.
Change-Id: Id0280aec72202f3b3098c9c3b563541c2c0f2900
Kunal Mehta [Thu, 25 May 2017 19:05:49 +0000 (12:05 -0700)]
parser: Avoid deprecated wfMemcKey()
Tested that parser cache keys stay the same, before and after this
change.
Also use the more obvious ObjectCache::getLocalClusterInstance() instead
of looking up the main cache type in config and using
ObjectCache::getInstance().
Change-Id: Icef646b3c05e732ef4079d6900e6bce111debf2b
Kunal Mehta [Thu, 25 May 2017 18:41:56 +0000 (11:41 -0700)]
LanguageConverter: Avoid deprecated wfMemcKey()
Change-Id: I7fe8e3ad6de2eb0a156b046805fa0eca928d0892
Kunal Mehta [Thu, 25 May 2017 07:48:34 +0000 (00:48 -0700)]
CachingSiteStore: Avoid deprecated wfMemcKey()
Change-Id: I123b29dd41c6e0f020e0fcc661813addbec92b27
Kunal Mehta [Thu, 25 May 2017 07:48:09 +0000 (00:48 -0700)]
User: Avoid deprecated wfMemcKey()
Change-Id: Iffb4d85dfed740b01fcef5a25762dc751b292c41
Kunal Mehta [Thu, 25 May 2017 07:47:56 +0000 (00:47 -0700)]
UploadBase: Avoid deprecated wfMemcKey()
Change-Id: I717948d6550ed2d98c3a89b3e48e161c3af15d48
Kunal Mehta [Thu, 25 May 2017 07:47:46 +0000 (00:47 -0700)]
SpecialVersion: Avoid deprecated wfMemcKey()
Change-Id: I7cfaf049a4e193bdb12b5233f0460e71cbe876af
Kunal Mehta [Thu, 25 May 2017 07:47:27 +0000 (00:47 -0700)]
page: Avoid deprecated wfMemcKey()
And the deprecated ObjectCache::getMainWANInstance(),
getMainStashInstance() while we're at it.
Change-Id: I951c356f1c394a9658216dea54c92824dca83cbc
Kunal Mehta [Thu, 25 May 2017 07:46:48 +0000 (00:46 -0700)]
SiteStatsUpdate: Avoid deprecated wfMemcKey()
And the deprecated ObjectCache::getMainStashInstance() while we're at
it.
Change-Id: Iebd4e029c3ab6443403087d991bb263ef83b1ed8
Kunal Mehta [Thu, 25 May 2017 07:46:22 +0000 (00:46 -0700)]
SiteStats: Avoid deprecated wfMemcKey()
And the deprecated ObjectCache::getMainWANInstance() while we're at it.
Change-Id: If9d9ab9c661c003a3aa6c2d956700b1870a52f41
Kunal Mehta [Thu, 25 May 2017 07:45:55 +0000 (00:45 -0700)]
Block: Avoid deprecated wfMemcKey()
Change-Id: Ie23261b7b6dd9d03d314cf77d290bffb8df593cd
jenkins-bot [Thu, 25 May 2017 17:49:22 +0000 (17:49 +0000)]
Merge "ApiParse: Use existing OutputPage for prop=categorieshtml"
jenkins-bot [Thu, 25 May 2017 16:15:31 +0000 (16:15 +0000)]
Merge "Move some more classes to comply with class per file"
Željko Filipin [Fri, 31 Mar 2017 11:47:17 +0000 (13:47 +0200)]
Make running Selenium tests using Sauce Labs easy
If SAUCE_USERNAME and SAUCE_ACCESS_KEY environment variables are not
defined, tests are run with `npm run selenium`, as usual.
https://www.mediawiki.org/wiki/Selenium/Node.js/Inside_MediaWiki-Vagrant
https://www.mediawiki.org/wiki/Selenium/Node.js/Target_MediaWiki-Vagrant
If the environment variables are defined, to run tests using Sauce Labs
and targeting Beta Cluster, run this:
```
export SAUCE_USERNAME=***
export SAUCE_ACCESS_KEY=***
export MW_SERVER=https://en.wikipedia.beta.wmflabs.org
./node_modules/.bin/wdio tests/selenium/wdio.conf.js
```
https://www.mediawiki.org/wiki/Selenium/Node.js/Target_beta_cluster_using_Sauce_Labs
Bug: T139740
Change-Id: I622d9c55ae595ab772e733388d209623e3a9f81e
Brad Jorsch [Thu, 25 May 2017 15:18:48 +0000 (11:18 -0400)]
ApiParse: Use existing OutputPage for prop=categorieshtml
Follows up Iaa85ac49.
This also ensures that the Skin correctly refers back to the constructed
OutputPage even when 'useskin' isn't specified.
Change-Id: I983e907c05acd753733e88904953f355e26f393d
Sébastien Santoro [Mon, 20 Mar 2017 14:51:24 +0000 (14:51 +0000)]
Add kbp language code
Bug: T160915
Change-Id: I1de0c2eb0228697544f2e3bfedf76bc37ac3f679
Aaron Schulz [Thu, 25 May 2017 10:40:26 +0000 (03:40 -0700)]
Add missing ampersand to getMultiWithSetCallback() callback
Also fixed a php example block comment
Change-Id: Ib6967180ad0d45aec7b7d4b6d383723e2c95fefa
jenkins-bot [Thu, 25 May 2017 07:48:59 +0000 (07:48 +0000)]
Merge "mediawiki.page.watch: Deprecate mw.page object"
jenkins-bot [Wed, 24 May 2017 22:35:48 +0000 (22:35 +0000)]
Merge "Avoid treating mcrouter set()s as failing due to AllAsyncRoute"
jenkins-bot [Wed, 24 May 2017 22:31:42 +0000 (22:31 +0000)]
Merge "Revert "Revert "Fix the web updater"""
Timo Tijhof [Wed, 24 May 2017 15:39:51 +0000 (17:39 +0200)]
Update git submodules
* Update extensions/wikihiero from branch 'wmf/1.30.0-wmf.2'
- Fix styles queue violation for "ext.wikihiero.Special"
The same module is explicitly being loaded twice, once just the
styles, and again with the JS/messages/dependencies as well.
This is wasteful and also unsupported.
Move the two style rules to the main stylesheet and load the
proper styles module it belongs to instead.
Bug: T92459
Change-Id: I012b4d9bff5bd0379f8b9eb663d5b5dbf71f1885
Paladox [Wed, 24 May 2017 22:20:55 +0000 (22:20 +0000)]
Revert "Revert "Fix the web updater""
This reverts commit
a7b9cc4946a2f7fb081f64d9230bf944736a185b.
Change-Id: I91d4b821df126703f83377dd8aff3a79b629f720
jenkins-bot [Wed, 24 May 2017 21:56:37 +0000 (21:56 +0000)]
Merge "Revert "Fix the web updater""
Paladox [Wed, 24 May 2017 21:43:30 +0000 (21:43 +0000)]
Revert "Fix the web updater"
May be causing beta to break, if that's true then we are going to revert
6519c42d248a78d2d42edee1beb21f926d227044
This reverts commit
5d56bcb925af653fed427e90a1cfb982de386720.
Change-Id: I5e9df08dc1583266bb11b52d5d68bf393e4c0fff
Chad Horohoe [Wed, 24 May 2017 20:54:21 +0000 (13:54 -0700)]
Update git submodules
* Update extensions/ProofreadPage from branch 'wmf/1.30.0-wmf.2'
- Properly handle batches of pages to update
Using LIMIT on UPDATE/DELETE queries is unsafe when using statement-based
replication as you can't ensure the same sets of rows are updated.
Instead, select a batch of problematic page_ids, update by them, then
continue until we don't find any more to fix
Bug: T166261
Change-Id: I8a5d2989285c72450d6a48ccc12d88fdeeb3fb6f
Translation updater bot [Wed, 24 May 2017 20:16:19 +0000 (22:16 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I2e981505c8fd591998178998508e923f9e9fbb41
mdew192837 [Wed, 24 May 2017 12:49:53 +0000 (07:49 -0500)]
MessageCache: Avoid deprecated wfMemcKey()
Change-Id: I31e3cde0a94e355de9f32a17636aaf54aa2d40c4
jenkins-bot [Wed, 24 May 2017 18:36:08 +0000 (18:36 +0000)]
Merge "Batch/pipeline backend operations in refreshFileHeaders" into wmf/1.30.0-wmf.2
Gilles Dubuc [Sun, 21 May 2017 11:17:20 +0000 (13:17 +0200)]
Update git submodules
* Update extensions/TimedMediaHandler from branch 'wmf/1.30.0-wmf.2'
- Make getContentHeaders rely on fallback width/height
Bug: T150741
Change-Id: I89cc083aac39f71460b10bfc0ce341c115bd6b64
Depends-On: I2c0f39b2b01f364c3fab997ccc2f874b7f101d8a
Gilles Dubuc [Sun, 21 May 2017 11:51:24 +0000 (13:51 +0200)]
Update git submodules
* Update extensions/PagedTiffHandler from branch 'wmf/1.30.0-wmf.2'
- Update getContentHeaders signature
Bug: T150741
Change-Id: I714bd9a340c64e5b8536c031923ad0b486434632
Depends-On: I2c0f39b2b01f364c3fab997ccc2f874b7f101d8a
jenkins-bot [Wed, 24 May 2017 18:36:01 +0000 (18:36 +0000)]
Merge "Use file width/height instead of metadata for getContentHeaders" into wmf/1.30.0-wmf.2
Gilles Dubuc [Sun, 21 May 2017 11:21:47 +0000 (13:21 +0200)]
Update git submodules
* Update extensions/PdfHandler from branch 'wmf/1.30.0-wmf.2'
- Update getContentHeaders signature
Bug: T150741
Change-Id: I3a62185243d5a0d561da63a5e5ccafed093d41bb
Aaron Schulz [Wed, 24 May 2017 17:50:05 +0000 (10:50 -0700)]
Avoid treating mcrouter set()s as failing due to AllAsyncRoute
Per https://github.com/facebook/mcrouter/wiki/List-of-Route-Handles
a NullRoute response is always given for DELETE and SET. The former
already is already handled by MediaWiki treating NOT_FOUND as success.
Change-Id: I79c26bcd6b8ffe7eea73e0d45badcc4ed63f05e6
jenkins-bot [Wed, 24 May 2017 16:23:46 +0000 (16:23 +0000)]
Merge "Fix up deprecation of wfMemcKey()/wfGlobalCacheKey()"
jenkins-bot [Wed, 24 May 2017 15:53:36 +0000 (15:53 +0000)]
Merge "rdbms: Add compat alias for renamed LBFactory class"
Fomafix [Tue, 23 May 2017 17:58:11 +0000 (19:58 +0200)]
Restore dependency on module 'mediawiki.page.startup'
Module 'mediawiki.page.watch.ajax' requires a dependency to module
'mediawiki.page.startup' because 'mediawiki.page.startup' creates the object
mw.page and 'mediawiki.page.watch.ajax' requires this object.
This dependency got lost in
06a0dec05723eb6a6604421e134345a5abe115a5.
Bug: T114288
Change-Id: Iebfda85c77eaf6bb19d2ae755813b1c36a95dac8
(cherry picked from commit
ef456a78051bd01fa29ebeb1b89bdbfb6703b6c4)
jenkins-bot [Wed, 24 May 2017 11:34:20 +0000 (11:34 +0000)]
Merge "installer: Replace bad calls to getText() on DBQueryError exceptions"
Timo Tijhof [Wed, 24 May 2017 11:27:37 +0000 (13:27 +0200)]
rdbms: Add compat alias for renamed LBFactory class
This was renamed to be namespaced, but there are still some uses
that justify having an alias, similar to how we did with most
other classes in rdbms that were renamed in 1.29.
Bug: T164896
Change-Id: I36426144491b976322c3c96c08a821300d3b4a46
mainframe98 [Mon, 15 May 2017 15:17:04 +0000 (17:17 +0200)]
installer: Replace bad calls to getText() on DBQueryError exceptions
The called method does not exist. Replaced with getMessage(),
similar to PostgresInstaller.php.
Bug: T165319
Change-Id: I900ec8c18307ce6f9e8c9f4cda79b1e33ed66dff
jenkins-bot [Wed, 24 May 2017 10:04:19 +0000 (10:04 +0000)]
Merge "Update psysh to 0.8.5"
Thiemo Mättig [Wed, 24 May 2017 09:32:41 +0000 (11:32 +0200)]
Fix incomplete Language::getDatePreferences() documentation
Look at languages/messages/MessagesEo.php for one of about a dozen real
world examples where this is set to false. All code calling
getDatePreferences checks if it got a truthy value first before using
it.
Change-Id: I4ef5c8be618d41039297325c9dd4cf554ea14559
Gilles Dubuc [Tue, 23 May 2017 08:41:33 +0000 (10:41 +0200)]
Batch/pipeline backend operations in refreshFileHeaders
Bug: T150741
Change-Id: I44efd47e7eb3eba71ae39808ee8e6969e141c5cc
Gilles Dubuc [Sat, 20 May 2017 15:53:19 +0000 (17:53 +0200)]
Use file width/height instead of metadata for getContentHeaders
This allows us to populate X-Content-Dimensions without touching the
existing metadata format. Which makes the migration of existing content a lot faster by
only having to run refreshFileHeaders.
Bug: T150741
Change-Id: I2c0f39b2b01f364c3fab997ccc2f874b7f101d8a
jenkins-bot [Wed, 24 May 2017 06:44:54 +0000 (06:44 +0000)]
Merge "Use file width/height instead of metadata for getContentHeaders"
Kunal Mehta [Wed, 24 May 2017 03:36:28 +0000 (20:36 -0700)]
session: Avoid deprecated wfMemcKey()
Change-Id: I4d77c2c52ef43cbc54878ce920595befd270a28e
Kunal Mehta [Wed, 24 May 2017 03:49:01 +0000 (20:49 -0700)]
ChangeTags: Avoid deprecated wfMemcKey()
And ObjectCache::getMainWANInstance() while we're at it too.
Change-Id: I2678f5f940ed29654600fec39ff5daee7f59a223
Kunal Mehta [Wed, 24 May 2017 03:42:14 +0000 (20:42 -0700)]
skins: Avoid deprecated wfMemcKey()
Change-Id: Id31998b365f486a651341563c0b16a358ce2b31d
Kunal Mehta [Wed, 24 May 2017 03:41:48 +0000 (20:41 -0700)]
media: Avoid deprecated wfMemcKey()
And ObjectCache::getMainWANInstance() while we're at it.
Change-Id: Ib22bd134c3faa56f8d8f111bb9ed99d826cbed40
Kunal Mehta [Wed, 24 May 2017 03:38:39 +0000 (20:38 -0700)]
registration: Avoid deprecated wfMemcKey()
Change-Id: I8f4382d55ba2d006f1573e945c83c3fd541a2cb1
Kunal Mehta [Wed, 24 May 2017 03:36:53 +0000 (20:36 -0700)]
InfoAction: Avoid deprecated wfMemcKey()
And the deprecated ObjectCache::getMainWANInstance() while we're at it.
Change-Id: Id7bb6a8c3e8269345e054d2c2bf202304b74c3cf
Kunal Mehta [Tue, 23 May 2017 22:10:17 +0000 (15:10 -0700)]
auth: Avoid deprecated wfGlobalCacheKey()
Change-Id: I2d6fa73fe857a0495df13aa25071e69b1ec2ba70
Kunal Mehta [Tue, 23 May 2017 22:08:25 +0000 (15:08 -0700)]
FileCacheBase: Avoid deprecated wfMemcKey()
Change-Id: I5476bf45deb55ef4ff158970102b1ce17d3fee29
Kunal Mehta [Tue, 23 May 2017 22:01:34 +0000 (15:01 -0700)]
AuthManager: Avoid deprecated wfMemcKey()
Change-Id: I254f9c057b8a151c593054dd4f2137586abf262a
Kunal Mehta [Tue, 23 May 2017 21:57:35 +0000 (14:57 -0700)]
Fix up deprecation of wfMemcKey()/wfGlobalCacheKey()
* Move @deprecated tags out of the header so the documentation comment
still has a summary
* makeKey() and co. are part of BagOStuff, not ObjectCache
Follows up
1e5961dbf6a.
Change-Id: I168ce97597f288f6345a404354d68371e57522d3
Translation updater bot [Tue, 23 May 2017 20:11:50 +0000 (22:11 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I005052043dc4c3025e18f6dd2e29b435e3afab3d
Timo Tijhof [Tue, 23 May 2017 19:30:35 +0000 (21:30 +0200)]
mediawiki.page.watch: Deprecate mw.page object
Let's deprecate the mw.page object in the same way we did with mw.special.
mw.page.watch is the only property that exists inside mw.page, and it's mostly
internal. Let's expose that via module.exports instead (for use by Wikibase
and VisualEditor).
Change-Id: I0e6a95bd4fbaba06eae5137ac7af84f62bebf6f0
jenkins-bot [Tue, 23 May 2017 19:57:18 +0000 (19:57 +0000)]
Merge "Batch/pipeline backend operations in refreshFileHeaders"
Gilles Dubuc [Tue, 23 May 2017 08:41:33 +0000 (10:41 +0200)]
Batch/pipeline backend operations in refreshFileHeaders
Bug: T150741
Change-Id: I44efd47e7eb3eba71ae39808ee8e6969e141c5cc
Gilles Dubuc [Sat, 20 May 2017 15:53:19 +0000 (17:53 +0200)]
Use file width/height instead of metadata for getContentHeaders
This allows us to populate X-Content-Dimensions without touching the
existing metadata format. Which makes the migration of existing content a lot faster by
only having to run refreshFileHeaders.
Bug: T150741
Change-Id: I2c0f39b2b01f364c3fab997ccc2f874b7f101d8a
Fomafix [Tue, 23 May 2017 19:00:57 +0000 (21:00 +0200)]
Create object mw.page in watch.js
The object mw.page is only used in watch.js and it is not intended to extend
this object by other modules because with module.exports exists a more
flexible way.
This change avoids the dependency on module 'mediawiki.page.startup'.
Change-Id: Ib717261c20856d048c67e2196e9dc619b72ab1db
jenkins-bot [Tue, 23 May 2017 18:49:18 +0000 (18:49 +0000)]
Merge "Restore dependency on module 'mediawiki.page.startup'"
jenkins-bot [Tue, 23 May 2017 18:44:06 +0000 (18:44 +0000)]
Merge "Sync up with Parsoid parserTests.txt"
jenkins-bot [Tue, 23 May 2017 18:42:44 +0000 (18:42 +0000)]
Merge "Move loading of mediawiki.toc from Parser to Skin"
jenkins-bot [Tue, 23 May 2017 18:42:40 +0000 (18:42 +0000)]
Merge "ApiParse: Add Skin::getDefaultModules() in useskin mode"
jenkins-bot [Tue, 23 May 2017 18:31:20 +0000 (18:31 +0000)]
Merge "OutputPage: Move hardcoded default modules to Skin::getDefaultModules"
jenkins-bot [Tue, 23 May 2017 18:31:15 +0000 (18:31 +0000)]
Merge "mediawiki.action.edit.preview: Enable 'useskin' mode for action=parse API"
jenkins-bot [Tue, 23 May 2017 18:29:40 +0000 (18:29 +0000)]
Merge "ApiParse: Add 'useskin' param for general OutputPage/Skin support"
Fomafix [Tue, 23 May 2017 17:58:11 +0000 (19:58 +0200)]
Restore dependency on module 'mediawiki.page.startup'
Module 'mediawiki.page.watch.ajax' requires a dependency to module
'mediawiki.page.startup' because 'mediawiki.page.startup' creates the object
mw.page and 'mediawiki.page.watch.ajax' requires this object.
This dependency got lost in
06a0dec05723eb6a6604421e134345a5abe115a5.
Bug: T114288
Change-Id: Iebfda85c77eaf6bb19d2ae755813b1c36a95dac8
C. Scott Ananian [Tue, 23 May 2017 17:28:10 +0000 (13:28 -0400)]
Sync up with Parsoid parserTests.txt
This now aligns with Parsoid commit
ebac189004d6edc4801719a5802766113bc84beb
Change-Id: I09bd3a72fd6210abc200bead2a16ad4106bcc6f9
Tyler Cipriani [Tue, 23 May 2017 17:26:26 +0000 (17:26 +0000)]
Creating new WMF 1.30.0-wmf.2 branch
jenkins-bot [Tue, 23 May 2017 16:06:03 +0000 (16:06 +0000)]
Merge "Avoid SearchEnginePrefixTest postgres failures"
Gergő Tisza [Tue, 23 May 2017 15:33:16 +0000 (17:33 +0200)]
Update psysh to 0.8.5
0.8.4 introduced sudo, which is like TestingAccessWrapper
but shorter to type. 0.8.5 fixes a bug in 0.8.4.
Vendor patch is in I375c9d681999e8ff46d8bbf2120194e7a4612011.
Change-Id: I07b174c6f25f1d289f0b233f7aec493cb51919cd
C. Scott Ananian [Thu, 19 Jan 2017 19:58:05 +0000 (14:58 -0500)]
Protect language converter markup in the preprocessor (take 2).
This revises
28774022769d2273be16c6c6e1cca710a1fd97ef, which was
reverted in master due to unexpected issues with `-{{...}} ` markup
on translatewiki and enwiki. Test cases are added to ensure that this
is parsed as a template, not as language converter markup.
https://www.mediawiki.org/wiki/Preprocessor_ABNF is the canonical
documentation for the preprocessor; this will be updated after this
patch is merged. The basic principles described in that page are
maintained in this patch:
* Rightmost opening structure has precedence: `-{{` is parsed as a
dash followed by template opening.
* `{{{` has precedence over `{{` and `-{`: `-{{{{` is parsed as
`-{` `{{{` since we first grab the rightmost `{{{`.
A bunch of test cases were added to verify the "ideal precedence"
order described on that wiki page.
This patch introduced some minor incompatibilities in existing
markup, in particular with chemical formulae in templates.
Fixes for these are being tracked at
https://www.mediawiki.org/wiki/Parsoid/Language_conversion/Preprocessor_fixups
Bug: T146304
Bug: T153761
Change-Id: I2f0c186c75e392c95e1a3d89266cae2586349150
jenkins-bot [Tue, 23 May 2017 14:04:52 +0000 (14:04 +0000)]
Merge "Initialize mw.util.$content in mediawiki.util"
jenkins-bot [Tue, 23 May 2017 13:56:22 +0000 (13:56 +0000)]
Merge "Date range filtering in Special:NewFiles"
jenkins-bot [Tue, 23 May 2017 13:50:07 +0000 (13:50 +0000)]
Merge "mediawiki.page.patrol.ajax: Remove dependency on mediawiki.page.startup"
Fomafix [Tue, 16 May 2017 04:43:09 +0000 (06:43 +0200)]
Initialize mw.util.$content in mediawiki.util
This avoids the public method mw.util.init().
Add a noop function and a deprecation warning to mw.util.init().
The dependency to module 'mediawiki.page.startup' is not necessary anymore
for using mw.util.$content.
Change-Id: Ib8ca3f9afa43de0ff0bb87569dd2ddfddf2a69b8
jenkins-bot [Tue, 23 May 2017 13:12:47 +0000 (13:12 +0000)]
Merge "Use test user helper methods in UserGroupMembershipTest/UserTest"
Bartosz Dziewoński [Tue, 23 May 2017 12:48:32 +0000 (14:48 +0200)]
Parser: Better debugging of lock errors ("Did you call Parser::parse recursively?")
Save the backtrace when locking, so that if some code tries locking again,
we can print the lock owner's backtrace for easier debugging.
Change-Id: I6e352b4aa5e7cb35825a66592f6c066d9e8b95c9
jenkins-bot [Tue, 23 May 2017 07:51:36 +0000 (07:51 +0000)]
Merge "Remove TestingAccessWrapper class (now available via composer)"
jenkins-bot [Tue, 23 May 2017 07:51:32 +0000 (07:51 +0000)]
Merge "Chinese Conversion Table Update 2017-3"
Fomafix [Mon, 22 May 2017 20:12:18 +0000 (22:12 +0200)]
mediawiki.page.patrol.ajax: Remove dependency on mediawiki.page.startup
The module 'mediawiki.page.patrol.ajax' does not need a dependency on
the module 'mediawiki.page.startup'.
Change-Id: I2619a0709b93c26a8b3906273b4d5a988230d662
jenkins-bot [Tue, 23 May 2017 05:28:03 +0000 (05:28 +0000)]
Merge "GlobalFunctions: Avoid unnecessary fully-namespaced MediaWikiServices"
jenkins-bot [Tue, 23 May 2017 05:27:26 +0000 (05:27 +0000)]
Merge "Deprecate wfMemcKey() and wfGlobalCacheKey()"
Kunal Mehta [Tue, 23 May 2017 04:37:33 +0000 (21:37 -0700)]
ApiHelp: Avoid deprecated ObjectCache::getMainWANInstance()
And switch wfMemcKey() to $cache->makeKey() while we're at it.
Change-Id: I4e37fbe1ddd49cc7583dd0f2f950eaf21c9ef050
Kunal Mehta [Tue, 23 May 2017 04:32:52 +0000 (21:32 -0700)]
Deprecate wfMemcKey() and wfGlobalCacheKey()
For a while now these functions have called makeKey/makeGlobalKey() on
the default ObjectCache instances, and callers should now use those
functions directly instead.
There are other advantages to doing so, like in cases where the
ObjectCache instance being used has a different makeKey implementation
(e.g. memcache) than the default configured cache.
Change-Id: I9abf6badbf3ba800e591d2503b714433d5faf1e3
Kunal Mehta [Tue, 23 May 2017 04:28:41 +0000 (21:28 -0700)]
GlobalFunctions: Avoid unnecessary fully-namespaced MediaWikiServices
There's already a "use" statement for MediaWikiServices so the full
class name isn't required.
Change-Id: Idabdd406a7c4afa1312fb45dea8499236fe3d6fd
jenkins-bot [Tue, 23 May 2017 01:00:55 +0000 (01:00 +0000)]
Merge "resourceloader: Add tests for OutputPage::buildExemptModules"