jenkins-bot [Tue, 9 Aug 2016 23:41:59 +0000 (23:41 +0000)]
Merge "SpecialEditWatchlist: Use LinkRenderer instead of Linker::link()"
Gergő Tisza [Fri, 1 Apr 2016 16:49:26 +0000 (19:49 +0300)]
Remove $wgDisableAuthManager
Change-Id: I2b2c9693a275fcc026916bd97f303e7a5c8df341
Kunal Mehta [Tue, 9 Aug 2016 22:09:45 +0000 (15:09 -0700)]
SiteStats: Fix some phpdoc
...and don't pass false as $conds, use an empty array.
Change-Id: I58127f0e7c4edad9345b924a019d64e5d2d6ddd9
Translation updater bot [Tue, 9 Aug 2016 19:59:13 +0000 (21:59 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Ib4d6844bed0df62a2ee97e7b7f46dfc724defdfc
Kunal Mehta [Thu, 4 Aug 2016 23:04:06 +0000 (16:04 -0700)]
SpecialEditWatchlist: Use LinkRenderer instead of Linker::link()
Change-Id: Ib75078f14005940b5c625932d1bbb8c17299c448
jenkins-bot [Tue, 9 Aug 2016 17:02:42 +0000 (17:02 +0000)]
Merge "Updating $tailoringFirstLetters for Macedonian Per https://ssl.icu-project.org/trac/browser/icu/trunk/source/data/coll/mk.txt"
Bartosz Dziewoński [Wed, 3 Aug 2016 00:13:01 +0000 (02:13 +0200)]
Introduce UploadStashFile hook, improve API handling of stash errors
UploadBase:
* Introduce a new method, tryStashFile(), as a replacement for the
now-soft-deprecated stashFile(). The method runs the new hook and
returns a Status object, with an error (if the hook returned an
error) or a value (if it didn't).
* Introduce a new hook, UploadStashFile, allowing extensions to
prevent a file from being stashed. Note that code in extensions
which has not been updated for MediaWiki 1.28 may still call
stashFile() directly, and therefore not call this hook. For
important checks (not just for UI), extension authors should use
UploadVerifyFile or UploadVerifyUpload hooks.
* Extract common code of tryStashFile() and stashFile() to
a new protected method doStashFile().
SpecialUpload:
* Use tryStashFile() when stashing a file after a warning or
"recoverable error" was encountered.
ApiUpload:
* Refactor stashing code so that error handling only happens in one
place, not four different ones. Use Status objects rather than
exception throwing/catching for control flow.
* Simplify the error messages slightly (error codes are unchanged).
Produce better ones by always using handleStashException().
'stashfailed' is now always at root (not nested inside 'warnings'),
behaving the same as 'filekey' does on success.
* Use tryStashFile() when stashing. Handle errors so as to allow
custom API results passed via ApiMessage to be preserved.
Some API result changes for different requests are shown below.
api.php?action=upload&format=json&filename=good.png&file=...&stash=1
Before:
{
"error": {
"code": "stashfilestorage",
"info": "Could not store upload in the stash: Stashing temporary file failed: UploadStashFileException Error storing file in '/tmp/phpB32SRT': Could not create directory \"mwstore://local-backend/local-temp/3/3a\".",
"*": "See http://localhost:3080/w/api.php for API usage"
}
}
After:
{
"error": {
"code": "stashfilestorage",
"info": "Could not store upload in the stash: Error storing file in '/tmp/phpB32SRT': Could not create directory \"mwstore://local-backend/local-temp/3/3a\".",
"*": "See http://localhost:3080/w/api.php for API usage"
}
}
api.php?action=upload&format=json&filename=[bad].png&file=...
Before:
{
"upload": {
"result": "Warning",
"warnings": {
"badfilename": "-bad-.png",
"stashfailed": "Stashing temporary file failed: UploadStashFileException Error storing file in '/tmp/phpB32SRT': Could not create directory \"mwstore://local-backend/local-temp/3/3a\"."
}
}
}
After:
{
"upload": {
"result": "Warning",
"stashfailed": "Could not store upload in the stash: Error storing file in '/tmp/phpB32SRT': Could not create directory \"mwstore://local-backend/local-temp/3/3a\"."
"warnings": {
"badfilename": "-bad-.png",
}
}
}
Bug: T140521
Change-Id: I2f574b355cd33b2e9fa7ff8e1793503b257cce65
jenkins-bot [Tue, 9 Aug 2016 15:36:28 +0000 (15:36 +0000)]
Merge "SpecialTags: Use LinkRenderer instead of Linker::link()"
jenkins-bot [Tue, 9 Aug 2016 15:31:13 +0000 (15:31 +0000)]
Merge "SpecialMostlinkedCategories: Use LinkRenderer instead of Linker::link()"
jenkins-bot [Tue, 9 Aug 2016 15:29:29 +0000 (15:29 +0000)]
Merge "SpecialChangeCredentials: Use LinkRenderer instead of Linker::link()"
Florian [Tue, 9 Aug 2016 15:20:47 +0000 (17:20 +0200)]
Fix comment of get/setLinkRenderer in doxygen
Doxygen requires the full qualified name of the class in a comment
or in the @aram/@return annotation, otherwise the class isn't linked
in the resulting output[1]. This commit changes the LinkRenderer
annotations in SpecialPage and Parser to \MediaWiki\Linker\LinkRenderer.
[1] https://doc.wikimedia.org/mediawiki-core/master/php/classSpecialPage.html#
a3560214f63fc2f20c63b4025db5cd81d
Change-Id: I74cedcd764a6053cc5a0c6d2eedbedb72651f57c
jenkins-bot [Tue, 9 Aug 2016 15:22:36 +0000 (15:22 +0000)]
Merge "SpecialUploadStash: Use LinkRenderer instead of Linker::link()"
jenkins-bot [Tue, 9 Aug 2016 15:18:45 +0000 (15:18 +0000)]
Merge "SpecialShortPages: Use LinkRenderer instead of Linker::link()"
Edward Chernenko [Tue, 9 Aug 2016 08:34:17 +0000 (11:34 +0300)]
Resources.php: mark "mediawiki.api.upload" module as 'targets' => [ 'desktop', 'mobile' ]
This module doesn't call anything desktop-specific.
There is no reason to deny this module to scripts which run on both desktop and mobile.
Change-Id: Ia6b778ca8a188688e2c0e813332aee03d3b5ac52
Aaron Schulz [Mon, 1 Aug 2016 03:44:42 +0000 (20:44 -0700)]
Beef up and generalize IDBAccessObject constants a bit
Change-Id: Id8df6131df57b6a3e0aae90f4431ce0a467ec590
jenkins-bot [Tue, 9 Aug 2016 00:06:07 +0000 (00:06 +0000)]
Merge "jquery.tablesorter: Handle more than single characters in 'tableSorterCollation'"
Darian Anthony Patrick [Mon, 8 Aug 2016 23:54:59 +0000 (16:54 -0700)]
Add grant for access to private information
Add 'viewmyprivateinfo' user right, which controls
access to information like email and real name.
Bug: T68493
Change-Id: I9f7de8ad77a1592707695cb5c1983b8f4cace1b6
Aaron Schulz [Tue, 2 Aug 2016 03:00:43 +0000 (20:00 -0700)]
LoadBalancer object injection cleanups
Follows-up
5f921702d2.
* Move cache object creation up to LBFactory.
* Refactored some code duplication in LBFactorySimple.
Change-Id: I0a5820f5155fc545a8bf0cc4e7c27f878388682b
Bartosz Dziewoński [Fri, 5 Aug 2016 18:01:17 +0000 (20:01 +0200)]
jquery.tablesorter: Handle more than single characters in 'tableSorterCollation'
The code that uses this will already work fine, we only need to change
how the regex is built.
Bug: T140240
Change-Id: I014d9b13815d8ae085a6ed7c6df2d62337bb46f7
Aaron Schulz [Mon, 8 Aug 2016 21:55:56 +0000 (14:55 -0700)]
Use MediaWikiServices in restInPeace() for load balancer factory
Change-Id: Icc12100bd3409900c848c72a31417a8c25ae1021
jenkins-bot [Mon, 8 Aug 2016 21:04:40 +0000 (21:04 +0000)]
Merge "Mention UploadBase::stashFile() "checked" exceptions in docs"
Kaldari [Mon, 8 Aug 2016 20:39:13 +0000 (13:39 -0700)]
Updating $tailoringFirstLetters for Macedonian
Per https://ssl.icu-project.org/trac/browser/icu/trunk/source/data/coll/mk.txt
Bug: T26953
Change-Id: I45938402923a109cfc80f59555af5cede584fc3b
jenkins-bot [Mon, 8 Aug 2016 20:14:53 +0000 (20:14 +0000)]
Merge "Add missing addQuotes() call to masterPosWait()"
Translation updater bot [Mon, 8 Aug 2016 20:02:55 +0000 (22:02 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I5b592794dcf6c4ee5c5b2c81885b0c1e816a0fa1
Aaron Schulz [Mon, 8 Aug 2016 19:36:18 +0000 (12:36 -0700)]
Add missing addQuotes() call to masterPosWait()
Change-Id: Ic7f35920fe10d99b63fdff23dc6e3f7cd4c7ca8b
Timo Tijhof [Fri, 15 Jul 2016 14:13:09 +0000 (15:13 +0100)]
resourceloader: Move queue formatting out of OutputPage
HTML formatting of the queue was distributed over several OutputPage methods.
Each method demanding a snippet of HTML by calling makeResourceLoaderLink()
with a limited amount of information. As such, makeResourceLoaderLink() was
unable to provide the client with the proper state information.
Centralising it also allows it to better reduce duplication in HTML output
and maintain a more accurate state.
Problems fixed by centralising:
1. The 'user' module is special (due to per-user 'version' and 'user' params).
It is manually requested via script-src. To avoid a separate (and wrong)
request from something that requires it, we set state=loading directly.
However, because the module is in the bottom, the old HTML formatter could
only put state=loading in the bottom also. This sometimes caused a wrong
request to be fired for modules=user if something in the top queue
triggered a requirement for it.
2. Since
a464d1d4 (T87871) we track states of page-style modules, with purpose
of allowing dependencies on style modules without risking duplicate loading
on pages where the styles are loaded already. This didn't work, because the
state information about page-style modules is output near the stylesheet,
which is after the script tag with mw.loader.load(). That runs first, and
mw.loader would still make a duplicate request before it learns the state.
Changes:
* Document reasons for style/script tag order in getHeadHtml (per
09537e83).
* Pass $type from getModuleStyles() to getAllowedModules(). This wasn't needed
before since a duplicate check in makeResourceLoaderLink() verified the
origin a second time.
* Declare explicit position 'top' on 'user.options' and 'user.tokens' module.
Previously, OutputPage hardcoded them in the top. The new formatter doesn't.
* Remove getHeadScripts().
* Remove getInlineHeadScripts().
* Remove getExternalHeadScripts().
* Remove buildCssLinks().
* Remove getScriptsForBottomQueue().
* Change where Skin::setupSkinUserCss() is called. This methods lets the skin
add modules to the queue. Previously it was called from buildCssLinks(),
via headElement(), via prepareQuickTemplate(), via OutputPage::output().
It's now in OutputPage::output() directly (slightly earlier). This is needed
because prepareQuickTemplate() calls bottomScripts() before headElement().
And bottomScript() would lazy-initialise the queue and lock it before
setupSkinUserCss() is called from headElement().
This makes execution order more predictable instead of being dependent on
the arbitrary order of data extraction in prepareQuickTemplate (which varies
from one skin to another).
* Compute isUserModulePreview() and isKnownEmpty() for the 'user' module early
on so. This avoids wrongful loading and fixes problem 1.
Effective changes in output:
* mw.loader.state() is now before mw.loader.load(). This fixes problem 2.
* mw.loader.state() now sets 'user.options' and 'user.tokens' to "loading".
* mw.loader.state() now sets 'user' (as "loading" or "ready"). Fixes problem 1.
* The <script async src> tag for 'startup' changed position (slightly).
Previously it was after all inline scripts and stylesheets. It's still after
all inline scripts and after most stylesheets, but before any user styles.
Since the queue is now formatted outside OutputPage, it can't inject the
meta-ResourceLoaderDynamicStyles tag and user-stylesheet hack in the middle
of existing output. This shouldn't have any noticable impact.
Bug: T87871
Change-Id: I605b8cd1e1fc009b4662a0edbc54d09dd65ee1df
jenkins-bot [Mon, 8 Aug 2016 18:08:26 +0000 (18:08 +0000)]
Merge "SpecialNewFiles: Restore the 'newimagestext' message"
Bartosz Dziewoński [Mon, 8 Aug 2016 17:54:03 +0000 (19:54 +0200)]
SpecialNewFiles: Restore the 'newimagestext' message
Follow-up to
c5ed2698579a085747ef290c9e6e3b8ba3f8960b.
Bug: T142191
Change-Id: If3d0c6d80c97494a6545db67a7adbd7c7ca05cb1
jenkins-bot [Mon, 8 Aug 2016 17:56:25 +0000 (17:56 +0000)]
Merge "SpecialUpload: Use LinkRenderer instead of Linker::link()"
Kunal Mehta [Thu, 4 Aug 2016 22:53:02 +0000 (15:53 -0700)]
SpecialUpload: Use LinkRenderer instead of Linker::link()
Fixed a typo too!
Change-Id: I0b58c2a78c2ae1de850f8e00a549dd29b8cedba2
jenkins-bot [Mon, 8 Aug 2016 16:30:59 +0000 (16:30 +0000)]
Merge "Adding a bunch of hooks from wikiHow into DifferenceEngine, 2nd try"
Kunal Mehta [Mon, 8 Aug 2016 09:56:39 +0000 (02:56 -0700)]
registration: Fix adding $formerGlobals in conversion script
Using + for two arrays does not work if they are using numerical
indexes.
Bug: T142344
Change-Id: I49541bd344fa81d20c9b4cf61b968b58137ab140
jenkins-bot [Sun, 7 Aug 2016 21:11:35 +0000 (21:11 +0000)]
Merge "Fix display of numeric tag names on Special:Tags"
jenkins-bot [Sun, 7 Aug 2016 20:55:05 +0000 (20:55 +0000)]
Merge "registration: Add hint about UnitTestsList hook in conversion script"
Translation updater bot [Sun, 7 Aug 2016 20:06:56 +0000 (22:06 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: Ia20da2a7d3a9b9b0f7eee2620b85252cfff2126f
Glaisher [Sat, 30 Jul 2016 10:05:36 +0000 (15:05 +0500)]
Use different message when (un)watching a page in talk namespace
addedwatchtext and removedwatchtext uses the phrase "$1 and its discussion page".
As this is inaccurate on talk namespace pages, two new messages, addedwatchtext-talk
and removedwatchtext-talk, have been introduced for use in talk namespace pages.
Bug: T87856
Change-Id: Iafd86402d3a2a65ce2be007c87c981ac08f44e67
Amir Sarabadani [Sun, 7 Aug 2016 10:27:38 +0000 (14:57 +0430)]
Clean up array() syntax in docs, part II
Change-Id: I226ce6bcb5bbf6ed3802042dd2790f85617833e1
Kunal Mehta [Sun, 7 Aug 2016 03:41:13 +0000 (20:41 -0700)]
SpecialTags: Use LinkRenderer instead of Linker::link()
Change-Id: I2b179e9d90e79f46cca5c6698847caadeadc1444
Kunal Mehta [Sun, 7 Aug 2016 09:27:09 +0000 (02:27 -0700)]
registration: Add hint about UnitTestsList hook in conversion script
Change-Id: Ia161c2e10943e75c98ee8e0d2341bc2c9a418faf
This, that and the other [Sun, 7 Aug 2016 05:14:16 +0000 (15:14 +1000)]
Fix display of numeric tag names on Special:Tags
All tag names that were numbers (e.g. "123456") showed up as "0".
Change-Id: I8da326fa4dfa7e6556fb508c5e4b1f1573d1369b
This, that and the other [Sun, 7 Aug 2016 04:56:19 +0000 (14:56 +1000)]
Fix display of action table cells on Special:Tags
Users with the managechangetags right but without the deletechangetags
right saw a jagged table, with cells missing from the Actions column.
Also, users with the deletechangetags right but without the
managechangetags didn't see a column header for the Actions column.
Change-Id: I66198cfb181ba8616a98b16f84eaa843f0352f70
jenkins-bot [Sun, 7 Aug 2016 04:07:26 +0000 (04:07 +0000)]
Merge "Balancer: pass configuration array to flatten instead of individual booleans"
Kunal Mehta [Sun, 7 Aug 2016 03:37:21 +0000 (20:37 -0700)]
SpecialMostlinkedCategories: Use LinkRenderer instead of Linker::link()
Change-Id: Ib2f08246b173cf1d39e33d2e07490463bbab1bf5
Kunal Mehta [Sun, 7 Aug 2016 03:36:22 +0000 (20:36 -0700)]
SpecialChangeCredentials: Use LinkRenderer instead of Linker::link()
Change-Id: I90d42f9b5106b4bc9876b85ccd3224b1a91f4885
Kunal Mehta [Sun, 7 Aug 2016 03:34:28 +0000 (20:34 -0700)]
SpecialUploadStash: Use LinkRenderer instead of Linker::link()
Change-Id: I8c5b05093bc2b62c58a109c28e48530e39e945d2
Kunal Mehta [Sun, 7 Aug 2016 03:32:08 +0000 (20:32 -0700)]
SpecialShortPages: Use LinkRenderer instead of Linker::link()
Change-Id: I1ed13e5d056e553a2363f9a3036dc63aefaf851a
jenkins-bot [Sun, 7 Aug 2016 02:43:45 +0000 (02:43 +0000)]
Merge "Revert "API: Remove deprecated response values from action=login""
jenkins-bot [Sun, 7 Aug 2016 01:57:51 +0000 (01:57 +0000)]
Merge "Don't force loading of groups and options on User::loadFromUserObject"
daniel [Sat, 6 Aug 2016 16:44:08 +0000 (18:44 +0200)]
Don't force loading of groups and options on User::loadFromUserObject
When copying state from one User object to another, don't force
the source object to be initialized. The target object can initialize
groups and options on demand as usual.
Among other things, this helps to avoid some cases of recursive calls
to User::load(), see I6d1b9fe0789b4.
Bug: T142295
Bug: T137051
Change-Id: Ib369cf5b00628550591c2ee5dcb195db7c59a59c
jenkins-bot [Sat, 6 Aug 2016 23:18:16 +0000 (23:18 +0000)]
Merge "HtmlArmor: Pass ENT_QUOTES to htmlspecialchars()"
Fomafix [Sat, 6 Aug 2016 22:49:05 +0000 (22:49 +0000)]
Move style for #wikiPreview to mediawiki.action.edit.styles.css
The style module 'mediawiki.action.edit.styles' gets loaded in EditPage.php.
Bug: T89981
Change-Id: Ie691df4e926be8f094e4117c836334d01d935868
jenkins-bot [Sat, 6 Aug 2016 22:35:56 +0000 (22:35 +0000)]
Merge "Adding release notes about the addition of numeric sorting support"
Kaldari [Thu, 4 Aug 2016 20:35:56 +0000 (13:35 -0700)]
Adding release notes about the addition of numeric sorting support
Bug: T8948
Change-Id: I371c83f21927bd2903c7a87059b088e788702b6b
Bartosz Dziewoński [Sat, 6 Aug 2016 22:19:15 +0000 (00:19 +0200)]
HtmlArmor: Pass ENT_QUOTES to htmlspecialchars()
Change-Id: I0f025d938bd7def8a29788e3c02009a447853275
jenkins-bot [Sat, 6 Aug 2016 22:15:46 +0000 (22:15 +0000)]
Merge "Move Special:Upload styling out of mediawiki.special.styles"
jenkins-bot [Sat, 6 Aug 2016 22:08:25 +0000 (22:08 +0000)]
Merge "Move CSS for patrol from mediawiki.legacy to new module mediawiki.page.patrol"
C. Scott Ananian [Thu, 4 Aug 2016 19:35:59 +0000 (15:35 -0400)]
Balancer: pass configuration array to flatten instead of individual booleans
This refactoring makes it easier to add additional options later without
having to pass them manually through the call chain.
Change-Id: I46814f17d1b338b971ab57f63c2ec75d4a6b45d5
jenkins-bot [Sat, 6 Aug 2016 14:49:50 +0000 (14:49 +0000)]
Merge "Fix @covers tag"
Fomafix [Sat, 6 Aug 2016 13:46:47 +0000 (13:46 +0000)]
Move CSS for patrol from mediawiki.legacy to new module mediawiki.page.patrol
Also change the selector from
div.patrollink
to
.patrollink
Bug: T89981
Change-Id: Ib79d17fab61b1a7b940b2acff6d19a58a3fe0bc9
jenkins-bot [Sat, 6 Aug 2016 08:47:47 +0000 (08:47 +0000)]
Merge "Include AuthManager API endpoints in authmanager channel"
jenkins-bot [Sat, 6 Aug 2016 08:45:59 +0000 (08:45 +0000)]
Merge "Add dependency to 'jquery.textSelection' for 'mediawiki.toolbar'"
jenkins-bot [Sat, 6 Aug 2016 08:42:06 +0000 (08:42 +0000)]
Merge "Show wgPageParseReport on page previews too"
Kunal Mehta [Sat, 6 Aug 2016 08:04:21 +0000 (01:04 -0700)]
Fix @covers tag
Trying to @cover or @use not existing method
"ResourceLoaderFileModule::getScripts"
Change-Id: Ifc4d2c98f5129f0d205e12081dfb48568d8250cb
jenkins-bot [Sat, 6 Aug 2016 01:02:40 +0000 (01:02 +0000)]
Merge "Fix increment() statsd call in JobRunner"
Aaron Schulz [Thu, 4 Aug 2016 19:35:23 +0000 (12:35 -0700)]
Fix increment() statsd call in JobRunner
Change-Id: I17e04db59a44a491aae99c4542216316361010a0
Ben Davis [Mon, 18 Jul 2016 19:26:07 +0000 (14:26 -0500)]
Fix for "Invalid key type: integer"
MWCryptHash::hmac requires a string, but mt_rand() returns an integer.
This issue resulted in an uncaught exception in a fresh installation
of mediawiki.
Imported from https://github.com/wikimedia/mediawiki/pull/55
Change-Id: Idccf5f230bfc2de30357b03c78c51cdad4839515
Aaron Schulz [Fri, 5 Aug 2016 23:28:18 +0000 (16:28 -0700)]
Mention UploadBase::stashFile() "checked" exceptions in docs
Change-Id: I732db6526511711e7c21cf81ddd088e50ab601ec
Gergő Tisza [Fri, 5 Aug 2016 22:50:11 +0000 (22:50 +0000)]
Revert "API: Remove deprecated response values from action=login"
Revert commit
23e5cdb5034dca5bbdfc2ac9c111c5fac20ff579
temporarily so Pywikibot users can catch up with API changes
Bug: T121527
Bug: T142155
Change-Id: I3879a5d76a1727dd653daeebc79d4d9cabd0332e
Aaron Schulz [Fri, 5 Aug 2016 21:52:14 +0000 (14:52 -0700)]
Fix inconsistent RevDelFileItem visibilities
Bug: T142228
Change-Id: Ib5a0a1adbea2daf2b035cf6be367841362de03cc
jenkins-bot [Fri, 5 Aug 2016 22:09:20 +0000 (22:09 +0000)]
Merge "Keep $user->mEditCount up to date"
jenkins-bot [Fri, 5 Aug 2016 21:48:56 +0000 (21:48 +0000)]
Merge "SpecialProtectedpages: Use LinkRenderer instead of Linker::link()"
jenkins-bot [Fri, 5 Aug 2016 21:44:51 +0000 (21:44 +0000)]
Merge "Unify Special:Contribs/DeletedContribs subtitle implementation"
Aaron Schulz [Fri, 5 Aug 2016 21:41:40 +0000 (14:41 -0700)]
Show wgPageParseReport on page previews too
Also make EditPage::getPreviewLimitReport return the same
output instead of using copy-pasted code from the old hook.
Bug: T142210
Bug: T142214
Change-Id: I16c3c2da067fd24bf7ae564cb1d61beaa3be58c1
jenkins-bot [Fri, 5 Aug 2016 21:40:48 +0000 (21:40 +0000)]
Merge "SpecialContributions: Use LinkRenderer instead of Linker::link()"
jenkins-bot [Fri, 5 Aug 2016 21:34:03 +0000 (21:34 +0000)]
Merge "Provide context in ContributionsToolLinks hook"
jenkins-bot [Fri, 5 Aug 2016 20:54:20 +0000 (20:54 +0000)]
Merge "Change explicit class to self in AutoloadGenerator"
Translation updater bot [Fri, 5 Aug 2016 19:58:23 +0000 (21:58 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I049258472a2111a94733403ee8eb8a36bd0280cc
Florian [Fri, 5 Aug 2016 18:04:10 +0000 (20:04 +0200)]
Change explicit class to self in AutoloadGenerator
Follow-up: I3a426b92892f4c00cab33a13f6a717751120367c
Change-Id: I9d91ca42dbf41604639fff2ca00efa6fb262cb3d
James D. Forrester [Fri, 5 Aug 2016 18:04:02 +0000 (11:04 -0700)]
build: Fix stylelint devDependencies
Change-Id: I26cee89c27e3cd8f3c1fc48088b2a8e8b3927e4a
Stephane Bisson [Wed, 3 Aug 2016 15:26:47 +0000 (11:26 -0400)]
Keep $user->mEditCount up to date
Whenever User::incEditCount() is called,
this tries to keep the user object up
to date so hooks can read the edit count
without reloading the user from the db.
Another option would be invalidate the
instance cache and let the read
repopulate it. It would add a db access
on each edit.
Bug: T128249
Change-Id: I79194c41d6b2fd84ad658909a2941d9d3d28d94e
Fomafix [Fri, 5 Aug 2016 13:01:03 +0000 (13:01 +0000)]
Add dependency to 'jquery.textSelection' for 'mediawiki.toolbar'
Change-Id: Ie3b001551802364b488ba84588a028c44c73e755
Gergő Tisza [Fri, 5 Aug 2016 02:17:28 +0000 (02:17 +0000)]
Include AuthManager API endpoints in authmanager channel
Change-Id: I0fa6e9687d02a67c5d36e16b3827e7cc3beb8259
jenkins-bot [Fri, 5 Aug 2016 00:54:57 +0000 (00:54 +0000)]
Merge "Balancer style tweaks"
jenkins-bot [Fri, 5 Aug 2016 00:27:25 +0000 (00:27 +0000)]
Merge "Balancer: remove redundant assignment"
jenkins-bot [Fri, 5 Aug 2016 00:05:36 +0000 (00:05 +0000)]
Merge "Balancer: consistent single-line comment style"
Timo Tijhof [Thu, 4 Aug 2016 23:24:07 +0000 (16:24 -0700)]
mw.loader: Clean up unit tests by using newer QUnit syntax
* Remove use of deprecated asyncTest() and QUnit.start().
Instead, use test() and assert.async().
* Where possible, simply return a Promise instead of manually
attaching up assert.async() to done(), fail() or always().
See <https://api.qunitjs.com/async/> and <https://api.qunitjs.com/QUnit.test/>
Change-Id: I8ec7fdc9c271bbc17555f2e750032282b1683d0e
Timo Tijhof [Thu, 4 Aug 2016 23:04:37 +0000 (16:04 -0700)]
mw.loader: Add 'require' as Promise value for using()
Discourage use of the global mw.loader.require method since it's contextless,
and doesn't allow for future expansion where we might detect missing declared
dependencies or could track stacking context.
In regular execution context, there is already a local require() method.
For ad-hoc loading through mw.loader.using() there is now a reference to a
require function.
This also discourages code from assuming that the internal implement() method
is synchronous - which may change after T142129.
Change-Id: Ia040729901b1e77da8d3bf4830bb076f8fa8c6e9
jenkins-bot [Thu, 4 Aug 2016 23:18:14 +0000 (23:18 +0000)]
Merge "resourceloader: Add missing @private and @protected to mw.loader methods"
Timo Tijhof [Thu, 4 Aug 2016 22:45:39 +0000 (15:45 -0700)]
resourceloader: Add missing @private and @protected to mw.loader methods
Several local functions were indexed by JSDuck as mw.loader methods whereas
they are in fact they don't even exist on that object. Mark them as @private.
Also add @protected on the internal methods 'work()' and 'require()',
which are public but not for general use (and may change without warning).
Change-Id: If521cc5ae4a565a46161890cf32e95a8c7f4ca50
Kunal Mehta [Thu, 4 Aug 2016 22:48:34 +0000 (15:48 -0700)]
Move Special:Upload styling out of mediawiki.special.styles
...into the specific mediawiki.special.upload.styles module which is
only supposed to be loaded upon Special:Upload.
Change-Id: I782bb3b05ef4fe9f2fc666afe8e1cb9514fc8b52
Kunal Mehta [Thu, 4 Aug 2016 22:25:13 +0000 (15:25 -0700)]
SpecialProtectedpages: Use LinkRenderer instead of Linker::link()
And remove an unused variable while we're at it.
Change-Id: I494caccfff4fb0510f26554395150e59c728c5a1
Kunal Mehta [Thu, 4 Aug 2016 22:19:59 +0000 (15:19 -0700)]
Unify Special:Contribs/DeletedContribs subtitle implementation
Basically all of the code was duplicated, except that Contribs had a
link to DeletedContribs, and DeletedContribs had a link to Contribs.
Now DeletedContribs will call the function in Contribs, and remove the
DeletedContribs link, and add its own link to Contribs instead of
needing to duplicate the entire list of links.
Change-Id: Ia004a4a69427fd5b554131b19b0e263523b7da67
Tim Starling [Mon, 1 Aug 2016 06:27:09 +0000 (16:27 +1000)]
Balancer style tweaks
* Use for loops where appropriate, instead of while
* De-indent a large block which was unnecessarily indented
* Use camel case for variable names, per the style guide
Change-Id: I0b2c37fdcab7f7238db0393085c43297e7a03ab2
Tim Starling [Mon, 1 Aug 2016 02:12:43 +0000 (12:12 +1000)]
Balancer: remove redundant assignment
Change-Id: I6c22d6227e43a2c5be454955eff6b053a94a1657
Timo Tijhof [Thu, 4 Aug 2016 21:47:57 +0000 (14:47 -0700)]
resourceloader: Disable filesystem cache for Less
Follows-up
ea862efa7, which enables use of Less_Cache as part
of the switch from leafo/lessphp to oyejorge/less.php.
Since then
12afb3607 introduced a better caching method in
FileModule::compileLessFile(), which:
* Uses APC where possible, with fallback to main objectcache.
* Verifies both the input file and the indirectly used files have
not changed before using the cache. The built-in cache system
only seems to check the root file.
As such, we're incurring the overhead of generating them and storing
on-disk, but raraly ever making use of them. (And even if we do
use it when the APC object first expires, it's risky due to the
lack of indirect file validation).
Bug: T121519
Change-Id: I6e3c66f86a536463488697efc166fb704be0715c
Kunal Mehta [Thu, 4 Aug 2016 21:48:55 +0000 (14:48 -0700)]
SpecialContributions: Use LinkRenderer instead of Linker::link()
Change-Id: I9d6b81d5c71ab56fef2fe4bd95cfa1a6c38cbc32
Kunal Mehta [Thu, 4 Aug 2016 21:48:29 +0000 (14:48 -0700)]
Provide context in ContributionsToolLinks hook
Most of the hook functions need context to see what the current user's
permissions are, to generate messages, or the LinkRenderer service to
generate the tool links.
Change-Id: I19fa27c8115ee39dded6cb98f29c35b66b934f8a
Translation updater bot [Thu, 4 Aug 2016 20:50:42 +0000 (22:50 +0200)]
Localisation updates from https://translatewiki.net.
Change-Id: I7f4659b50dcebe65487d1cc01ab9b1b6aeefbcec
jenkins-bot [Thu, 4 Aug 2016 19:44:28 +0000 (19:44 +0000)]
Merge "Add search-ignored-headings string, copied from cirrus-search-ignored-headings."
Tim Starling [Mon, 1 Aug 2016 01:51:46 +0000 (11:51 +1000)]
Balancer: consistent single-line comment style
Also break a line that was over 100 bytes
Change-Id: I875d572d4147f2438526a49ca6cb5b73907bdc9b