lhc/web/wiklou.git
7 years agoMerge "Database transaction flushing cleanups"
jenkins-bot [Tue, 16 Aug 2016 22:03:43 +0000 (22:03 +0000)]
Merge "Database transaction flushing cleanups"

7 years agoUpdate OOjs UI to v0.17.8
James D. Forrester [Tue, 16 Aug 2016 21:22:47 +0000 (14:22 -0700)]
Update OOjs UI to v0.17.8

Release notes:
 https://phabricator.wikimedia.org/diffusion/GOJU/browse/master/History.md;v0.17.8

Change-Id: I03793872885c70cabd1abd550b12d89e6e509e94

7 years agoDatabase transaction flushing cleanups
Aaron Schulz [Sat, 13 Aug 2016 01:56:41 +0000 (18:56 -0700)]
Database transaction flushing cleanups

* Do not commit() inside masterPosWait(). This could happen
  inside JobRunner::commitMasterChanges, resulting in
  one DB committing while the others may or may not later commit.
* Migrate some commit() callers to commitMasterChanges().
* Removed unsafe upload class commit() which could break
  outer transactions.
* Also cleaned up the "flush" flag to make it harder to misuse.

Change-Id: I75193baaed979100c5338abe0c0899abba3444cb

7 years agoSqlite: DBError expects a database object as its first parameter
Chad Horohoe [Tue, 16 Aug 2016 20:30:04 +0000 (13:30 -0700)]
Sqlite: DBError expects a database object as its first parameter

That constructor is dumb. It's also dumb to need a DB object
considering the only subclass using it is DBConnectionError
to getServerName()

Change-Id: I8e09989fd6635ccdffdba1102f55a9d3b7ba2f6e

7 years agoMerge "Replace blunt uses of resetExpectations() with setSilenced() for TransactionPr...
jenkins-bot [Tue, 16 Aug 2016 20:28:54 +0000 (20:28 +0000)]
Merge "Replace blunt uses of resetExpectations() with setSilenced() for TransactionProfiler"

7 years agoMerge "Localisation updates from https://translatewiki.net."
L10n-bot [Tue, 16 Aug 2016 20:14:25 +0000 (20:14 +0000)]
Merge "Localisation updates from https://translatewiki.net."

7 years agoMerge "Don't use SearchEngineConfig::searchableNamespaces in User::getDefaultOptions."
jenkins-bot [Tue, 16 Aug 2016 20:10:36 +0000 (20:10 +0000)]
Merge "Don't use SearchEngineConfig::searchableNamespaces in User::getDefaultOptions."

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Tue, 16 Aug 2016 20:04:27 +0000 (22:04 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I0c460c30205eabb7ce58660dbad57cd1c40e27e7

7 years agoMerge "Add a script to build an HHVM RepoAuthoritative bytecode file"
jenkins-bot [Tue, 16 Aug 2016 18:04:04 +0000 (18:04 +0000)]
Merge "Add a script to build an HHVM RepoAuthoritative bytecode file"

7 years agoMerge "watch.js: Preload module 'mediawiki.notification' after exit paths"
jenkins-bot [Tue, 16 Aug 2016 17:54:05 +0000 (17:54 +0000)]
Merge "watch.js: Preload module 'mediawiki.notification' after exit paths"

7 years agoMerge "Call parent::getFieldsForSearchIndex in ContentHandlers"
jenkins-bot [Tue, 16 Aug 2016 17:36:20 +0000 (17:36 +0000)]
Merge "Call parent::getFieldsForSearchIndex in ContentHandlers"

7 years agoMerge "TextContent: Normalize newlines in preSaveTransform()"
jenkins-bot [Tue, 16 Aug 2016 15:34:16 +0000 (15:34 +0000)]
Merge "TextContent: Normalize newlines in preSaveTransform()"

7 years agoMerge "GallerySlideshow: getImageInfo: Reject promise if there is no thumbnail"
jenkins-bot [Tue, 16 Aug 2016 15:28:02 +0000 (15:28 +0000)]
Merge "GallerySlideshow: getImageInfo: Reject promise if there is no thumbnail"

7 years agoTextContent: Normalize newlines in preSaveTransform()
Brad Jorsch [Mon, 15 Aug 2016 15:26:44 +0000 (11:26 -0400)]
TextContent: Normalize newlines in preSaveTransform()

This does the same normalization of newlines that
Parser::preSaveTransform() does. This should be appropriate for any text
content type, especially considering that EditPage uses
WebRequest::getText() which does a less-strict version of this same
transformation.

This also cleans up the code for doing that newline replacement
to be a bit less verbose.

Bug: T142805
Change-Id: I462afcda502f031a8b0360d982ce2398a0383a96

7 years agoMove thumbnail rendering to a more appropriate spot
Gilles Dubuc [Tue, 16 Aug 2016 11:44:08 +0000 (13:44 +0200)]
Move thumbnail rendering to a more appropriate spot

At the moment the job might start before the transaction
that creates the file's row in the DB has had a chance
to run.

Bug: T106740
Change-Id: If5b94e83d8bbcc6aebfe7193f7b580f03cbd627d

7 years agoMerge "Make autoCreateUser() transaction profiler suppression limited in scope"
jenkins-bot [Tue, 16 Aug 2016 08:51:07 +0000 (08:51 +0000)]
Merge "Make autoCreateUser() transaction profiler suppression limited in scope"

7 years agoMerge "Fix DBLockManager comments"
jenkins-bot [Tue, 16 Aug 2016 08:40:40 +0000 (08:40 +0000)]
Merge "Fix DBLockManager comments"

7 years agoMerge "Defer maybeUpgradeRow() post-send since they can trigger on non-POST"
jenkins-bot [Tue, 16 Aug 2016 08:32:46 +0000 (08:32 +0000)]
Merge "Defer maybeUpgradeRow() post-send since they can trigger on non-POST"

7 years agowatch.js: Preload module 'mediawiki.notification' after exit paths
Fomafix [Tue, 16 Aug 2016 07:07:29 +0000 (07:07 +0000)]
watch.js: Preload module 'mediawiki.notification' after exit paths

mw.notify is not called on the exit paths. A preload is not necessary.

Change-Id: I2b14a269afd78649eda86a40b33e22412e645e31

7 years agoGallerySlideshow: getImageInfo: Reject promise if there is no thumbnail
Prateek Saxena [Tue, 16 Aug 2016 05:26:17 +0000 (10:56 +0530)]
GallerySlideshow: getImageInfo: Reject promise if there is no thumbnail

Bug: T142799
Change-Id: Iacca208fa39afd1e330db1d1fa9f3bfbc6b76b81

7 years agoAdd a script to build an HHVM RepoAuthoritative bytecode file
Tim Starling [Mon, 15 Aug 2016 05:40:52 +0000 (15:40 +1000)]
Add a script to build an HHVM RepoAuthoritative bytecode file

This script compiles a list of known MW sources, including core and
extensions, and generates a RepoAuthoritative bytecode file. Some ideas
were taken from Bryan Davis's scap-hhvm-compile shell script.

Also, renamed the old maintenance/hiphop directory to maintenance/hhvm,
respecting the rename of the upstream project.

Change-Id: I55798729d0553d2840e8099e81d604a814e8664c

7 years agoMerge "Make various MWCallableUpdate usages rollback-safe"
jenkins-bot [Tue, 16 Aug 2016 01:01:53 +0000 (01:01 +0000)]
Merge "Make various MWCallableUpdate usages rollback-safe"

7 years agoMerge "Use waitForAll() for slow JobRunner commits"
jenkins-bot [Tue, 16 Aug 2016 00:58:20 +0000 (00:58 +0000)]
Merge "Use waitForAll() for slow JobRunner commits"

7 years agoMerge "Remove all assert() calls with string parameters"
jenkins-bot [Mon, 15 Aug 2016 23:38:56 +0000 (23:38 +0000)]
Merge "Remove all assert() calls with string parameters"

7 years agoCall parent::getFieldsForSearchIndex in ContentHandlers
aude [Mon, 15 Aug 2016 16:37:00 +0000 (12:37 -0400)]
Call parent::getFieldsForSearchIndex in ContentHandlers

ContentHandler implementations were not including fields
defined by their parent ContentHandler classes.

merge method is added to the SearchIndexFieldDefinition
mock in SearchEngineTest, to allow merges of fields
in the way that SearchIndexFieldDefition implementation does.

Change-Id: Id04a51528f566da2666bad0394a2f61c949c69b4

7 years agoRemove all assert() calls with string parameters
Tim Starling [Mon, 15 Aug 2016 06:02:53 +0000 (16:02 +1000)]
Remove all assert() calls with string parameters

These fail when HHVM is in RepoAuthoritative mode

Change-Id: Ifb1628f8269b2b651154b740b95cc14163a1b186

7 years agoUpgrade PhpParser to 2.1 and update findDeprecated.php
Tim Starling [Mon, 15 Aug 2016 06:00:27 +0000 (16:00 +1000)]
Upgrade PhpParser to 2.1 and update findDeprecated.php

The old PhpParser had dynamic class_alias() calls in its autoloader
which caused HHVM RepoAuthoritative compilation to fail with a fatal
error. These b/c aliases were removed in 2.0.

Change-Id: I6e2e3412204249a50a5806c33f48f426ab8c4511

7 years agoMerge "This changes grammar, spelling and flow of the README"
jenkins-bot [Mon, 15 Aug 2016 22:59:12 +0000 (22:59 +0000)]
Merge "This changes grammar, spelling and flow of the README"

7 years agoFix DBLockManager comments
Aaron Schulz [Mon, 15 Aug 2016 21:29:04 +0000 (14:29 -0700)]
Fix DBLockManager comments

Change-Id: I5431caf4b80995c71d4bc5ab739954d70081111a

7 years agoMerge "MWUI: Vertically align the icon pseudo elements"
jenkins-bot [Mon, 15 Aug 2016 21:11:26 +0000 (21:11 +0000)]
Merge "MWUI: Vertically align the icon pseudo elements"

7 years agoMake autoCreateUser() transaction profiler suppression limited in scope
Aaron Schulz [Mon, 15 Aug 2016 14:14:57 +0000 (07:14 -0700)]
Make autoCreateUser() transaction profiler suppression limited in scope

Change-Id: If7b2330aa8cdf49ae25e5c0af5cb3ffc3f40b257

7 years agoMerge "Clone WikiPage before delete and pass the cloned copy to ArticleDeleteComplete"
jenkins-bot [Mon, 15 Aug 2016 21:00:59 +0000 (21:00 +0000)]
Merge "Clone WikiPage before delete and pass the cloned copy to ArticleDeleteComplete"

7 years agoMerge "Fix display of action table cells on Special:Tags"
jenkins-bot [Mon, 15 Aug 2016 20:46:54 +0000 (20:46 +0000)]
Merge "Fix display of action table cells on Special:Tags"

7 years agoClone WikiPage before delete and pass the cloned copy to ArticleDeleteComplete
Andrew Otto [Thu, 14 Jul 2016 16:45:11 +0000 (12:45 -0400)]
Clone WikiPage before delete and pass the cloned copy to ArticleDeleteComplete

This allows the hook to examine the state of the WikiPage instance before
the data is actually deleted from the page table.

E.g. The hook can now do $wikiPage->isRedirect(); and get correct information.

Bug: T134502
Change-Id: I715046dc8157047aff4d5bd03ea6b5a47aee58bb

7 years agoMerge "Add grant for access to private information"
jenkins-bot [Mon, 15 Aug 2016 20:25:56 +0000 (20:25 +0000)]
Merge "Add grant for access to private information"

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Mon, 15 Aug 2016 20:05:04 +0000 (22:05 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I52e0ec9021f8fcc0e7304ec42c88a9b59e60e5dc

7 years agoMWUI: Vertically align the icon pseudo elements
Baha [Mon, 8 Aug 2016 22:03:06 +0000 (18:03 -0400)]
MWUI: Vertically align the icon pseudo elements

The icon element's image was not always in the vertical center depending
on the line height of the icon.

Bug: T142391
Change-Id: I4d73c27286a623cb82e2f8801c919ae6f8007e59

7 years agoReplace blunt uses of resetExpectations() with setSilenced() for TransactionProfiler
Aaron Schulz [Mon, 15 Aug 2016 14:21:36 +0000 (07:21 -0700)]
Replace blunt uses of resetExpectations() with setSilenced() for TransactionProfiler

Change-Id: Ica42f56f61cd720a16754e93dc9c4792d66c7a0f

7 years agoHTMLFormFieldCloner: Pass enpty array, not null, to avoid warning
Brad Jorsch [Mon, 15 Aug 2016 14:13:54 +0000 (10:13 -0400)]
HTMLFormFieldCloner: Pass enpty array, not null, to avoid warning

Bug: T142912
Change-Id: I18edfcb62f7b21f2c1990c73944ee6a956fd4901

7 years agoMerge "Set Czech (cs) and Slovak (sk) as reciprocal fallbacks"
jenkins-bot [Mon, 15 Aug 2016 10:40:43 +0000 (10:40 +0000)]
Merge "Set Czech (cs) and Slovak (sk) as reciprocal fallbacks"

7 years agoSet Czech (cs) and Slovak (sk) as reciprocal fallbacks
Federico Leva [Mon, 15 Aug 2016 10:08:51 +0000 (12:08 +0200)]
Set Czech (cs) and Slovak (sk) as reciprocal fallbacks

The two languages are mutually intelligible at a very high degree and
most speakers can be considered bilinguals or passive bilinguals.

Consulted resources:
* Eurostat special eurobarometer 386 (2012).
  http://ec.europa.eu/public_opinion/archives/ebs/ebs_386_en.pdf
* Mira Nábělková
** http://doai.io/10.1515/IJSL.2007.004: «These differences do not prevent the users of Slovak and
   Czech from understanding discourse in the other language [...]. While contact with Czech texts
   in the Slovak environment is obvious, it does not appear to be so in the opposite case.»
** High degree of passive bilingualism even in recent generations who don't feel it much.
   https://repozytorium.amu.edu.pl/bitstream/10593/9168/1/02_Viera_K0VA%C4%860VA_Czech_Slovak_intercultural_265_280.pdf
* Discussions with several translators.
** https://translatewiki.net/wiki/Thread:Portal_talk:Cs/Fallback_to_sk
** https://translatewiki.net/wiki/Thread:Portal_talk:Sk/Fallback_to_cs

Change-Id: Id85b281a3ef2f2ae00ee0aba827e94e4f5a1f924

7 years agoMerge "objectcache: expand getWithSetCallback() docs a bit"
jenkins-bot [Mon, 15 Aug 2016 10:14:29 +0000 (10:14 +0000)]
Merge "objectcache: expand getWithSetCallback() docs a bit"

7 years agoobjectcache: expand getWithSetCallback() docs a bit
Aaron Schulz [Mon, 15 Aug 2016 06:00:10 +0000 (23:00 -0700)]
objectcache: expand getWithSetCallback() docs a bit

Change-Id: Ifc8304848fd5e4b8f7ea5555271de09609cdbe10

7 years agoMake various MWCallableUpdate usages rollback-safe
Aaron Schulz [Sat, 13 Aug 2016 19:28:53 +0000 (12:28 -0700)]
Make various MWCallableUpdate usages rollback-safe

Support for this added to MWCallableUpdate and its helper method
in DeferredUpdates.

Bug: T141988
Change-Id: Ief150ea655036e2708557dd8ae847379edf21933

7 years agoMerge "Move bottomScripts() call in SkinTemplate"
jenkins-bot [Mon, 15 Aug 2016 07:39:17 +0000 (07:39 +0000)]
Merge "Move bottomScripts() call in SkinTemplate"

7 years agoMove bottomScripts() call in SkinTemplate
Gilles Dubuc [Mon, 15 Aug 2016 07:15:45 +0000 (09:15 +0200)]
Move bottomScripts() call in SkinTemplate

SkinTemplateNavigation::SpecialPage in buildContentNavigationUrls() and
possibly other hooks are susceptible to adding bottom scripts to
the skin's OutputPage.

It's safer to add the bottom scripts to the template
as late as we can, as doing so will instantiate the rlClient and
populate it with the scripts collected at that point.

Bug: T87871
Change-Id: I000365a7542167d8531d6984d3a1ef6c362034ab

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sun, 14 Aug 2016 19:56:50 +0000 (21:56 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Icdfeedc8ec01bee22e8de12e53b360a2440901cc

7 years agoHTMLForm: Use ObjectFactory instead of Reflection
Kunal Mehta [Sun, 14 Aug 2016 03:48:29 +0000 (20:48 -0700)]
HTMLForm: Use ObjectFactory instead of Reflection

ObjectFactory has a hack that constructs an object directly if there are
less than 10 parameters, which there typically is for HTMLForm classes.
This is faster than using ReflectionClass, and whenever ObjectFactory is
updated to take advantage of the splat operator, this will automatically
use it as well.

And use ::class while we're at it.

Change-Id: I7a696c127c237713448b165b9b4faee13f4ff88e

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sat, 13 Aug 2016 19:58:27 +0000 (21:58 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Id0fb9fda29209c1418d8bbae4f649750f5bf21dd

7 years agoMerge "content: Use "::class" when overriding TextContent::getContentClass()"
jenkins-bot [Sat, 13 Aug 2016 05:14:30 +0000 (05:14 +0000)]
Merge "content: Use "::class" when overriding TextContent::getContentClass()"

7 years agocontent: Use "::class" when overriding TextContent::getContentClass()
Kunal Mehta [Sat, 13 Aug 2016 04:16:37 +0000 (21:16 -0700)]
content: Use "::class" when overriding TextContent::getContentClass()

Change-Id: Iea03d2cd24fdb90253145a8abfefe9f8a09e46cd

7 years agoUse waitForAll() for slow JobRunner commits
Aaron Schulz [Thu, 11 Aug 2016 16:40:36 +0000 (09:40 -0700)]
Use waitForAll() for slow JobRunner commits

Using waitForOne() barely goes beyond semi-sync replication
already in place on serious DB clusters.

Change-Id: Idb719deaa5993bc2f818cd110d49d09567e0afb3

7 years agoClean up array() syntax in docs, part III
Amir Sarabadani [Sat, 13 Aug 2016 01:10:40 +0000 (05:40 +0430)]
Clean up array() syntax in docs, part III

Also fixing some typos here and there

Change-Id: I29c29acf87f84ba9993ba75ebf2ad8091d981574

7 years agoMerge "DefaultSettings: Clarify enotif documentation"
jenkins-bot [Fri, 12 Aug 2016 22:06:53 +0000 (22:06 +0000)]
Merge "DefaultSettings: Clarify enotif documentation"

7 years agoDefaultSettings: Clarify enotif documentation
Matthew Flaschen [Thu, 11 Aug 2016 16:23:16 +0000 (12:23 -0400)]
DefaultSettings: Clarify enotif documentation

Change-Id: I4cc5ff94c7000b4c2ed584e49a590065f8d5724c

7 years agoMerge "Use cache TTL constant in InfoAction"
jenkins-bot [Fri, 12 Aug 2016 21:47:41 +0000 (21:47 +0000)]
Merge "Use cache TTL constant in InfoAction"

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 12 Aug 2016 20:13:09 +0000 (22:13 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I8b959312b1d6bbf49bb795ca40108dfaa298877f

7 years agoUse cache TTL constant in InfoAction
Aaron Schulz [Fri, 12 Aug 2016 19:36:37 +0000 (12:36 -0700)]
Use cache TTL constant in InfoAction

Change-Id: If9924863500af612eaaab1c8cd5c655466efdc97

7 years agoMerge "Better handle already-used rev_id when restoring"
jenkins-bot [Fri, 12 Aug 2016 19:25:07 +0000 (19:25 +0000)]
Merge "Better handle already-used rev_id when restoring"

7 years agoAdd GENDER to messages on Special:(Deleted)Contributions
matejsuchanek [Sat, 9 Jul 2016 20:52:16 +0000 (22:52 +0200)]
Add GENDER to messages on Special:(Deleted)Contributions

Bug: T113346
Bug: T130960
Change-Id: I3452a6e1fc7b8604442127f94b68a613e6df33ab

7 years agoBetter handle already-used rev_id when restoring
Matthew Flaschen [Mon, 23 May 2016 18:57:10 +0000 (11:57 -0700)]
Better handle already-used rev_id when restoring

Leave it in the archive table, rather than the data being gone
from both the archive and revision table.

Bug: T135852
Change-Id: I202cea7910be82f1073b4365209e3b320e85d62e

7 years agoMerge "objectcache: Add changeTTL() method"
jenkins-bot [Fri, 12 Aug 2016 04:30:34 +0000 (04:30 +0000)]
Merge "objectcache: Add changeTTL() method"

7 years agoobjectcache: Add changeTTL() method
Aaron Schulz [Fri, 12 Aug 2016 02:26:21 +0000 (19:26 -0700)]
objectcache: Add changeTTL() method

This can change the TTL without fetching the object
so that keys can be renewed or set to expire soon.

Change-Id: Id1c2c9f89b3445cfa34263057dc5029cbe170833

7 years agoMerge "Deprecate various ResourceLoader modules"
jenkins-bot [Fri, 12 Aug 2016 01:50:16 +0000 (01:50 +0000)]
Merge "Deprecate various ResourceLoader modules"

7 years agoMerge "AuthManager: Always whitelist some special pages"
jenkins-bot [Thu, 11 Aug 2016 23:46:04 +0000 (23:46 +0000)]
Merge "AuthManager: Always whitelist some special pages"

7 years agoMerge "Revert "Move CSS for patrol from mediawiki.legacy to new module mediawiki...
jenkins-bot [Thu, 11 Aug 2016 23:05:06 +0000 (23:05 +0000)]
Merge "Revert "Move CSS for patrol from mediawiki.legacy to new module mediawiki.page.patrol""

7 years agoRevert "Move CSS for patrol from mediawiki.legacy to new module mediawiki.page.patrol"
Bartosz Dziewoński [Thu, 11 Aug 2016 22:54:54 +0000 (22:54 +0000)]
Revert "Move CSS for patrol from mediawiki.legacy to new module mediawiki.page.patrol"

This reverts commit e9f896d6a5c09838b92bcb871c306b25526c3f96.

Bug: T142750
Change-Id: Idb815d64d795d790ea2c07f2b5188ea5a46bfefb

7 years agoSkinTemplateTest typofix
Chad Horohoe [Thu, 11 Aug 2016 20:54:05 +0000 (13:54 -0700)]
SkinTemplateTest typofix

There's no "t" in "make"

Change-Id: I41dc25162262bddec94f3af35db86a246ccd7499

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Thu, 11 Aug 2016 20:00:59 +0000 (22:00 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I6bf5f6c5b9030b6af77ff7ab879baaba3e2d5832

7 years agoMerge "Rename 'authmanager' log channel to 'authevents'"
jenkins-bot [Thu, 11 Aug 2016 16:44:31 +0000 (16:44 +0000)]
Merge "Rename 'authmanager' log channel to 'authevents'"

7 years agoAuthManager: Always whitelist some special pages
Florian [Sun, 7 Aug 2016 18:09:42 +0000 (20:09 +0200)]
AuthManager: Always whitelist some special pages

Special:UserLogout should be whitelisted, if Special:UserLogin is whitelisted,
as otherwise the user is able to login, but not able to logout anymore (given,
that the sys-admin hasn't change the $wgWhitelistRead config variable).

Special:ChangePassword redirects to Special:ChangeCredentials. Instead of
adding this special page, it should be done explicitly in the
wiki configuration (LocalSettings.php). For this reason, the whitelist is
removed, too.

Change-Id: I271efb517bf0ec0022e6fe29673570ca08e8fe1a

7 years agoDefer maybeUpgradeRow() post-send since they can trigger on non-POST
Aaron Schulz [Thu, 11 Aug 2016 16:19:09 +0000 (09:19 -0700)]
Defer maybeUpgradeRow() post-send since they can trigger on non-POST

Change-Id: I791e7133d49ed9cd6dd40bb3fa35ea38d1ceba10

7 years agoThis patch adds Localisation to the links, and changes wording around.
zppix1 [Sun, 31 Jul 2016 20:51:47 +0000 (15:51 -0500)]
This patch adds Localisation to the links, and changes wording around.

Change-Id: I3c34e7491da81ac034d0b7b3f0517f1a8153b249

7 years agoMerge "resourceloader: Move queue formatting out of OutputPage"
jenkins-bot [Thu, 11 Aug 2016 14:09:58 +0000 (14:09 +0000)]
Merge "resourceloader: Move queue formatting out of OutputPage"

7 years agoMerge "Fix link to Help:Contents in UPGRADE file"
jenkins-bot [Thu, 11 Aug 2016 09:10:44 +0000 (09:10 +0000)]
Merge "Fix link to Help:Contents in UPGRADE file"

7 years agoMerge "Add SpecialPage::getTitleValueFor()"
jenkins-bot [Thu, 11 Aug 2016 08:32:35 +0000 (08:32 +0000)]
Merge "Add SpecialPage::getTitleValueFor()"

7 years agoMake Database disconnect and error suppression more robust
Aaron Schulz [Wed, 10 Aug 2016 02:15:05 +0000 (19:15 -0700)]
Make Database disconnect and error suppression more robust

* Disallow $ignoreErrors in query() on deadlocks, since that would otherwise
  silently rollback all changes from any other callers.
* Move recoverability checks for disconnects to canRecoverFromDisconnect().
* The first write of a DBO_TRX transaction is now considered recoverable.
* Run onTransactionResolution() callbacks on disconnect/deadlock rollback.
  Some DeferrableUpdate need this to know to abort.
* Disallow $ignoreErrors on disconnects considered unrecoverable. This
  makes it so that query() callers cannot cause writes from other callers
  to be silently lost, which is hard to reason about.
* Moved ping() logic to simple reconnect() method and ping() simply do
  a dummy SELECT, which triggeres reconnection if safe. Previously,
  ping() might cause subtle partial transaction loss.
* Remove ping() from strencode(), which would cause partial transaction
  loss where it actually reached.
* Remove mysqlPing() per https://bugs.php.net/bug.php?id=52561.

Bug: T142079
Change-Id: Ifb7f772ae849d67c0d92240a115c3f392e252937

7 years agoUpgrade unmatched explicit commit() of DBO_TRX to an exception
Aaron Schulz [Thu, 11 Aug 2016 03:16:12 +0000 (20:16 -0700)]
Upgrade unmatched explicit commit() of DBO_TRX to an exception

Follows-up f8d5075656 and 820f5d6ce5.

This mostly for sanity, as normally the exception would
happen on begin().

Change-Id: I2c2fb20ed5184d3c00d3050e929a11e3e37f50f4

7 years agoMerge "Fix comment about how to use AutoloadGenerator"
jenkins-bot [Thu, 11 Aug 2016 07:09:03 +0000 (07:09 +0000)]
Merge "Fix comment about how to use AutoloadGenerator"

7 years agoFix link to Help:Contents in UPGRADE file
Glaisher [Thu, 11 Aug 2016 06:37:42 +0000 (06:37 +0000)]
Fix link to Help:Contents in UPGRADE file

Change-Id: I4c8c44f8c75200f33985f2e769e88f171162cc83

7 years agoMerge "Replace extract() with explicit variable definitions in DjVuImage"
jenkins-bot [Thu, 11 Aug 2016 05:04:51 +0000 (05:04 +0000)]
Merge "Replace extract() with explicit variable definitions in DjVuImage"

7 years agoReplace extract() with explicit variable definitions in DjVuImage
Ricordisamoa [Wed, 17 Feb 2016 21:39:22 +0000 (22:39 +0100)]
Replace extract() with explicit variable definitions in DjVuImage

Bug: T28496
Change-Id: I09e012674e4d6c141912db6ef53dc51b2fcf0a66

7 years agoRemove checks formerly for MySQL server version
Kevin Israel [Mon, 23 May 2016 11:30:52 +0000 (07:30 -0400)]
Remove checks formerly for MySQL server version

Removed these checks instead of fixing them, for the stated reasons:

* initEditCount.php: "instanceof DatabaseMysql" is not a correct way to
  check if the database server is MySQL/MariaDB, because DatabaseMysql is
  now a subclass of DatabaseMysqlBase, only used as a wrapper around the
  deprecated mysql PHP extension (not the newer mysqli extension). The
  check was intended for pre-4.1 versions of MySQL, which do not support
  subqueries.

  The effect of this change is to use single-query mode whenever there is
  only one configured database server, even when using the mysqli PHP
  extension, which would have been the original intent.

* fixBug20757.php: If the database server is not MySQL/MariaDB, the
  $lowerLeft variable would remain undefined. The script was only intended
  for use with MySQL, so the check was only necessary in order to support
  pre-4.1 versions of MySQL, which require different SQL.

Follows-up b74f88967bf090af.

Change-Id: I7f32aed4473e5ea39dc40449ddc0af5f9a10df16

7 years agoMerge "Introduce UploadStashFile hook, improve API handling of stash errors"
jenkins-bot [Thu, 11 Aug 2016 04:31:27 +0000 (04:31 +0000)]
Merge "Introduce UploadStashFile hook, improve API handling of stash errors"

7 years agoAdd SpecialPage::getTitleValueFor()
Kunal Mehta [Tue, 9 Aug 2016 22:27:29 +0000 (15:27 -0700)]
Add SpecialPage::getTitleValueFor()

One of the most frequent instances of Title being used where TitleValue
could be used instead is for special pages, since there is no
convenience function that returns a TitleValue object. Hopefully this
will make it easier.

Because TitleValue is stricer about validation, we need to ensure that
$subpage is in dbkey form.

Change-Id: I50457620e25dfe03eb44d6fda5aabebcbf314863

7 years agoMerge "Add rc_name_type_patrolled_timestamp index"
jenkins-bot [Thu, 11 Aug 2016 01:58:49 +0000 (01:58 +0000)]
Merge "Add rc_name_type_patrolled_timestamp index"

7 years agoRequire POST for action=purge in PurgeAction
Aaron Schulz [Thu, 12 May 2016 19:52:00 +0000 (12:52 -0700)]
Require POST for action=purge in PurgeAction

For the index.php end point, POSTs do not need a token.

This avoids cross-DC writes in active/active DC setups and
avoids DB writes that can be caused by just accidentally
following a link.

There are no links to action=purge by default in MediaWiki.
User scripts that create purge links will continue to work.
However these links will now point to a confirmation form.
To preserve the immediate-purge-redirect effect, these
scripts should be updated to use the API instead.

Bug: T135170
Change-Id: I5749ff470d99c5e3f22e05ff6856394cc05a0f48

7 years agoMerge "StashEdit: Refactor and simplify edit.stash.js"
jenkins-bot [Thu, 11 Aug 2016 01:23:09 +0000 (01:23 +0000)]
Merge "StashEdit: Refactor and simplify edit.stash.js"

7 years agoStashEdit: Refactor and simplify edit.stash.js
Timo Tijhof [Mon, 8 Aug 2016 23:03:39 +0000 (16:03 -0700)]
StashEdit: Refactor and simplify edit.stash.js

* Reduce call sites for stashEdit() to only inside checkStash().

* Update onFormLoaded() to not call stashEdit() directly but instead
  call checkStash(). This avoids hardcoding the priority and
  simplifies code by ensuring isTextChanged() and isSummaryChanged()
  are always checked before stashEdit() is called.

* Move texthash and priority handling to stashEdit().

* Don't clear lastTextHash if text hasn't changed.

* Remove check for 'origSummary' in onTextFocus. Have stash rate
  always be 3s for the textarea, and always 1s for the summary.

Change-Id: I3f049df6ee2e1c218e8b3c1c397ff0bc50e58c8e

7 years agoMerge "LoadBalancer object injection cleanups"
jenkins-bot [Thu, 11 Aug 2016 01:11:07 +0000 (01:11 +0000)]
Merge "LoadBalancer object injection cleanups"

7 years agoThis changes grammar, spelling and flow of the README
zppix1 [Sun, 31 Jul 2016 20:51:47 +0000 (15:51 -0500)]
This changes grammar, spelling and flow of the README

Bug: T141738
Change-Id: I47d4e76d88b32af10805fa5531faf21cb1d8a77c

7 years agoMerge "Optimize summary-based extension edit stash caches"
jenkins-bot [Thu, 11 Aug 2016 01:03:07 +0000 (01:03 +0000)]
Merge "Optimize summary-based extension edit stash caches"

7 years agoMerge "Fix comment of get/setLinkRenderer in doxygen"
jenkins-bot [Thu, 11 Aug 2016 00:59:38 +0000 (00:59 +0000)]
Merge "Fix comment of get/setLinkRenderer in doxygen"

7 years agoFix comment about how to use AutoloadGenerator
Reedy [Thu, 11 Aug 2016 00:51:01 +0000 (01:51 +0100)]
Fix comment about how to use AutoloadGenerator

Change-Id: If15e9396b640536896406009233e91c0b5e2bb0f

7 years agoOptimize summary-based extension edit stash caches
Aaron Schulz [Sat, 30 Jul 2016 06:42:05 +0000 (23:42 -0700)]
Optimize summary-based extension edit stash caches

* Send stash requests when the summary changes, so that things like
  AbuseFilter caching have a higher hit rate.
* Make the backend API skip parsing if a fresh cache is already present.
  This makes requests for summary-only changes much faster and more likely
  to finish in time.
* Avoid sending the full text if only the summary changed since the
  last successful stash. This works via an optional stashedtexthash
  parameter to the API.
* Also always apply the lock in parseAndStash(), even for VE.

Change-Id: I9bfd74cf05411853b675c6f54ff5d8934bcfc54c

7 years agoMake PurgeChangedFiles actually purge old versions too
Aaron Schulz [Wed, 10 Aug 2016 23:29:10 +0000 (16:29 -0700)]
Make PurgeChangedFiles actually purge old versions too

Change-Id: I7aa746535ceae7d19c492145c3254d55511a8576

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 10 Aug 2016 20:03:32 +0000 (22:03 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ie52a98e5ed6094bd1e6be1a8c0043a223c95fcce

7 years agoDeprecate various ResourceLoader modules
jdlrobson [Wed, 3 Aug 2016 16:16:24 +0000 (09:16 -0700)]
Deprecate various ResourceLoader modules

Various modules in MediaWiki core replicate functionality elsewhere.
To improve consistency with how we build things and how things appear
in the frontend we need to guide engineers and gadget developers to use
the same libraries. No deprecation dates are given for these modules
but this is hoped to be the starting point for some good conversations
that will guide us to better frontend development

If a module depends on a deprecated module, it itself is not marked
as deprecated

Bug: T142418
Change-Id: Ibbfcfde64072e7d3e3ee5ecb7f966fd889259798

7 years agoMerge "registration: Fix adding $formerGlobals in conversion script"
jenkins-bot [Wed, 10 Aug 2016 17:17:35 +0000 (17:17 +0000)]
Merge "registration: Fix adding $formerGlobals in conversion script"

7 years agoMerge "mw.loader: Clean up unit tests by using newer QUnit syntax"
jenkins-bot [Wed, 10 Aug 2016 15:29:36 +0000 (15:29 +0000)]
Merge "mw.loader: Clean up unit tests by using newer QUnit syntax"