7 years agoSwitch some HTMLForms in special pages to OOUI
Bartosz Dziewoński [Fri, 1 May 2015 00:23:50 +0000 (02:23 +0200)]
Switch some HTMLForms in special pages to OOUI

Bug: T101473
Bug: T101474
Bug: T101475
Change-Id: I2c3d6486e09b3e4d5537b95194e178fd73ac9792

7 years agoSpecialResetTokens: Switch to OOUI form
Bartosz Dziewoński [Sun, 14 Jun 2015 22:43:53 +0000 (00:43 +0200)]
SpecialResetTokens: Switch to OOUI form


Change-Id: I30d401cc7c827b21eb2fb116558d0d9e764ec1f3

7 years agoOOUIHTMLForm: Implement HTMLRadioField
Bartosz Dziewoński [Sun, 14 Jun 2015 18:17:09 +0000 (20:17 +0200)]
OOUIHTMLForm: Implement HTMLRadioField

Example usage in I2c3d6486e09b3e4d5537b95194e178fd73ac9792
(Special:PageLanguage). Trivial now that we have RadioSelectInputWidget
in OOUI (added in fd2815e372f6a4beb4f4e5f2a7d9cbf785d40851).

Depends on If68f04a2fa20e7c03763898ab80cf39b5e6cb182 in OOUI.

Bug: T98855
Change-Id: I224e591e58534c07af62eebb9ae4b185225edc33

7 years agoOOUIHTMLForm: Implement HTMLMultiSelectField
Bartosz Dziewoński [Sun, 14 Jun 2015 18:14:31 +0000 (20:14 +0200)]
OOUIHTMLForm: Implement HTMLMultiSelectField

Example usage in I30d401cc7c827b21eb2fb116558d0d9e764ec1f3.
Following the template set by HTMLCheckMatrix, which for some reason
was implemented first. Also removed unfulfillable @todo comment.

Also corrected HTMLCheckMatrix code not to wrap OOUI widgets in
MediaWiki UI wrappers even when 'UseMediaWikiUIEverywhere' is set to
true, and to set the correct 'value' for checkboxes.

Bug: T100955
Change-Id: Ib5d000ca9a08abc8086ee05b5122116b086242ad

7 years agoOOUIHTMLForm: Correctly handle submit modifier flags
Bartosz Dziewoński [Sun, 14 Jun 2015 18:09:52 +0000 (20:09 +0200)]
OOUIHTMLForm: Correctly handle submit modifier flags

Rejigger some HTMLForm internals to remove the hardcoded assumption of
using 'mw-ui' classes.

Bug: T98903
Change-Id: Icc20453c999c761b87e19a71ccd43d93b9c1bfa7

7 years agoMerge "OOUIHTMLForm: Make the submit button infusable"
jenkins-bot [Sat, 27 Jun 2015 12:55:13 +0000 (12:55 +0000)]
Merge "OOUIHTMLForm: Make the submit button infusable"

7 years agoMerge "mediawiki.log: Remove call to console.trace() for each warning"
jenkins-bot [Sat, 27 Jun 2015 12:49:25 +0000 (12:49 +0000)]
Merge "mediawiki.log: Remove call to console.trace() for each warning"

7 years agomediawiki.log: Remove call to console.trace() for each warning
Timo Tijhof [Fri, 26 Jun 2015 08:45:32 +0000 (09:45 +0100)]
mediawiki.log: Remove call to console.trace() for each warning

When code that accesses a deprecated property is called multiple times,
every time a deprecation message is logged and a stack trace produced.

And all synchronously as well. This creates a duplicative mess in the

Per T103891, T103610, and reports on IRC, this appears to have a
tendency to crash Firebug.

While less convenient, there are other ways to get the calling
function from a warning (e.g. debugger, breakpoints, pause/step
execution). We don't call it for mw.log.error, either.

This should help reduce noise, speed up execution path, and hopefully
prevent such crashes in the future.

Change-Id: I80428a5e80dbb84b93be2f10340fe29d9bef12d3

7 years agoMerge "Chinese Conversion Table Update 2015-5"
jenkins-bot [Sat, 27 Jun 2015 08:39:06 +0000 (08:39 +0000)]
Merge "Chinese Conversion Table Update 2015-5"

7 years agoOOUIHTMLForm: Make the submit button infusable
Kunal Mehta [Sat, 27 Jun 2015 07:55:24 +0000 (00:55 -0700)]
OOUIHTMLForm: Make the submit button infusable

So people can do things to it like adding click handlers.

Change-Id: Ia51d3aca055709d5205eea1922a2985d1623ed8d

7 years agoMerge "RELEASE-NOTES-1.26: Bugzilla is dead, long live Phabricator!"
jenkins-bot [Sat, 27 Jun 2015 07:51:37 +0000 (07:51 +0000)]
Merge "RELEASE-NOTES-1.26: Bugzilla is dead, long live Phabricator!"

7 years agoChinese Conversion Table Update 2015-5
Chiefwei [Fri, 26 Jun 2015 06:36:07 +0000 (14:36 +0800)]
Chinese Conversion Table Update 2015-5

Update the Chinese conversion table routinely to fix bugs reported from

It is only data changes and only works for Chinese WikiProjects.

Change-Id: I0933141b0f06c5b7d7f1fb8153f6433276dc872f

7 years agoMerge "build: Updating development dependencies"
jenkins-bot [Sat, 27 Jun 2015 04:17:16 +0000 (04:17 +0000)]
Merge "build: Updating development dependencies"

7 years agobuild: Updating development dependencies
paladox [Fri, 19 Jun 2015 20:04:25 +0000 (22:04 +0200)]
build: Updating development dependencies

* mediawiki/mediawiki-codesniffer 0.2.0 → 0.3.0
* jakub-onderka/php-parallel-lint 0.8 → 0.9

Change-Id: I77da850809f926d624bfffbaa8fd81a981f10798

7 years agoAllow extensions to set $wgDisableCounters.
Mark A. Hershberger [Tue, 21 Apr 2015 00:31:48 +0000 (20:31 -0400)]
Allow extensions to set $wgDisableCounters.

Alternatively, removing this completely might surface the issue for users
more quickly.  Without this change, resolving {T74420} becomes more of an issue.

Bug: T74420
Change-Id: Ib2dc9ed56a945acb06b64f3b85ff07ac2a6b7600
(cherry picked from commit 6b4d6662b5b5005bb84f4c5e6315288611bf57f1)

7 years agoRemove deprecated $wgSpecialPageGroups
umherirrender [Thu, 25 Jun 2015 16:40:18 +0000 (18:40 +0200)]
Remove deprecated $wgSpecialPageGroups

$wgSpecialPageGroups is deprecated since 1.21
override SpecialPage::getGroupName instead

Remove also SpecialPageFactory::setGroup because it no long can set $wgSpecialPageGroups.
Also remove SpecialPageFactory::getGroup along with its setter.

All replaces in extensions can be found under:

Change-Id: I1aa8f98bf326b2e54d7403efbb9f002a106cefc5

7 years agoAdd a scary, all-caps warning to the docs for RejectParserCacheValue
Ori Livneh [Sat, 27 Jun 2015 00:44:46 +0000 (17:44 -0700)]
Add a scary, all-caps warning to the docs for RejectParserCacheValue

Follows I660679a4.

Change-Id: I65bde4f0f6939c9a1e3e06dcbdbf9856e4416df9

7 years agoUse APC for caching slave lag times
Aaron Schulz [Mon, 8 Jun 2015 19:08:01 +0000 (12:08 -0700)]
Use APC for caching slave lag times

Bug: T101433
Change-Id: Ia37ce5a7aca8217ec57cd8d8c5e43472b3d8845b

7 years agoImprove appearance of libraries on Special:Version
Kunal Mehta [Fri, 26 Jun 2015 01:30:40 +0000 (18:30 -0700)]
Improve appearance of libraries on Special:Version

* Added licenses
* Added description (will always be in English)
* Added authors
* Bold library name, like we do with extensions and skins

Change-Id: I880756b489fb5a3f81d398d32162a186a1b919d8

7 years agoMerge "Bump wikimedia/composer-merge-plugin to 1.2.0"
jenkins-bot [Fri, 26 Jun 2015 21:11:01 +0000 (21:11 +0000)]
Merge "Bump wikimedia/composer-merge-plugin to 1.2.0"

7 years agoRELEASE-NOTES-1.26: Bugzilla is dead, long live Phabricator!
Ricordisamoa [Fri, 26 Jun 2015 20:40:07 +0000 (22:40 +0200)]
RELEASE-NOTES-1.26: Bugzilla is dead, long live Phabricator!

Change-Id: I64921cfc5fe3fd9a58710110559035bb0a73364a

7 years agoBump wikimedia/composer-merge-plugin to 1.2.0
Bryan Davis [Fri, 26 Jun 2015 20:37:54 +0000 (14:37 -0600)]
Bump wikimedia/composer-merge-plugin to 1.2.0

* Mark as compatible with composer-plugin-api >=1.0, <2.0
* Hook post-install/post-update so the plugin can take effect on initial
* Fix crash when root package includes a branch-alias (#26)

Change-Id: I2e0d141f6e6a80d9667e60a16bec00d52a5eedea

7 years agoMerge "Fix and clarify task IDs in RELEASE-NOTES-1.26"
jenkins-bot [Fri, 26 Jun 2015 20:35:25 +0000 (20:35 +0000)]
Merge "Fix and clarify task IDs in RELEASE-NOTES-1.26"

7 years agoMerge "Add missing visibility keywords to WebPHandler methods"
jenkins-bot [Fri, 26 Jun 2015 20:26:12 +0000 (20:26 +0000)]
Merge "Add missing visibility keywords to WebPHandler methods"

7 years agoFix and clarify task IDs in RELEASE-NOTES-1.26
Ricordisamoa [Fri, 26 Jun 2015 20:06:29 +0000 (22:06 +0200)]
Fix and clarify task IDs in RELEASE-NOTES-1.26

Change-Id: I8df703b98fdb68bf6ee972b4f8c31f226c50c8f4

7 years agoAdd missing visibility keywords to WebPHandler methods
Ricordisamoa [Fri, 26 Jun 2015 20:01:39 +0000 (22:01 +0200)]
Add missing visibility keywords to WebPHandler methods

Change-Id: I548a863bfd42c8bbc3e6694a5b2dd96d98bd839c

7 years agoAdd 'EnhancedChangesListModifyLineData' hook
Stephane Bisson [Thu, 25 Jun 2015 19:13:23 +0000 (15:13 -0400)]
Add 'EnhancedChangesListModifyLineData' hook

Gives extensions a chance to modify the data used to
build each enhanced recent change 'inner' lines
(as opposed to the header lines).

Bug: T102021
Change-Id: Ia8a796fb9621db14d6574e66a4572e1fdf3bad03

7 years agoBasic support for WebP
btongminh [Sun, 17 Nov 2013 16:43:27 +0000 (17:43 +0100)]
Basic support for WebP

Adds basic image size detection for WebP and support in the
MediaHandler. Currently renders WebP files as PNGs, because that
handles transparency.

Bug: T50519
Change-Id: I3c00653a8a034efc3f6b60fe62b7ac2e5391f921

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 26 Jun 2015 19:24:50 +0000 (21:24 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I8aab1c2ac6a2956050a3ce5f65aafb47da1b4303

7 years agoMerge "Add more return types to Database class"
jenkins-bot [Fri, 26 Jun 2015 17:53:53 +0000 (17:53 +0000)]
Merge "Add more return types to Database class"

7 years agoShow {{DEFAULTSORT:0}} on info page
Fomafix [Wed, 24 Jun 2015 20:27:25 +0000 (20:27 +0000)]
Show {{DEFAULTSORT:0}} on info page

The info page of a page with {{DEFAULTSORT:0}} shows the page title
as default sort value.

Using empty() will consider the string '0' to be false, so use isset() instead.

Bug: T103745
Change-Id: I56ea5a38dcd33e822e0fc5b8685777fe1d212b22

7 years agoAdd more return types to Database class
addshore [Fri, 26 Jun 2015 14:47:58 +0000 (16:47 +0200)]
Add more return types to Database class

We expect these to be implemented and where
implemented we expect them to return these types.

This means when typehinting against Database
(Which is done throughout the code as we dont know
what DB we will eb using) warnings about void return
types will no longer be shown by static analysis stuff

Change-Id: I03d85560d9eb92d6df11dba8bc90339bf41cee8c

7 years agoMerge "Made text profiler output a bit less noisy by bumping "thresholdMs""
jenkins-bot [Fri, 26 Jun 2015 07:43:41 +0000 (07:43 +0000)]
Merge "Made text profiler output a bit less noisy by bumping "thresholdMs""

7 years agoMerge "database: Make LoadBalancer not yield DB objects that hopelessly lost the...
jenkins-bot [Fri, 26 Jun 2015 07:40:58 +0000 (07:40 +0000)]
Merge "database: Make LoadBalancer not yield DB objects that hopelessly lost the connection"

7 years agoMerge "database: Throw exceptions when dead mysql DB handles are used instead of...
jenkins-bot [Fri, 26 Jun 2015 07:36:32 +0000 (07:36 +0000)]
Merge "database: Throw exceptions when dead mysql DB handles are used instead of fatals"

7 years agoMade text profiler output a bit less noisy by bumping "thresholdMs"
Aaron Schulz [Mon, 22 Jun 2015 18:05:39 +0000 (11:05 -0700)]
Made text profiler output a bit less noisy by bumping "thresholdMs"

Change-Id: Ie66794c94fb3f6a3dc86ad604162b8e4f91c35ba

7 years agodatabase: Make LoadBalancer not yield DB objects that hopelessly lost the connection
Aaron Schulz [Fri, 26 Jun 2015 06:09:52 +0000 (23:09 -0700)]
database: Make LoadBalancer not yield DB objects that hopelessly lost the connection

* This is useful if the first slave picked went down and others
  can be used, especially in longer running scripts.
* A possible improvement to this would be to eventually allow
  retries by removing the bad handles from the load balancer,
  since isOpen() will never change from false. This would only
  be useful for very very long running CLI scripts and is
  probably an edge case for now.

Change-Id: Iecfc4004b4b2289907a4645b431de19198790d6c

7 years agodatabase: Throw exceptions when dead mysql DB handles are used instead of fatals
Aaron Schulz [Fri, 26 Jun 2015 05:58:23 +0000 (22:58 -0700)]
database: Throw exceptions when dead mysql DB handles are used instead of fatals

Bug: T103435
Change-Id: I75c4f3a950b3b333a289d0a6a41eb4f00c292121

7 years agoMerge "Made User::loadFromId() use READ_NORMAL by default"
jenkins-bot [Fri, 26 Jun 2015 06:21:23 +0000 (06:21 +0000)]
Merge "Made User::loadFromId() use READ_NORMAL by default"

7 years agoMerge "Fix some PHPCS issues"
jenkins-bot [Fri, 26 Jun 2015 05:44:31 +0000 (05:44 +0000)]
Merge "Fix some PHPCS issues"

7 years agoFix some PHPCS issues
Jackmcbarn [Fri, 26 Jun 2015 05:32:28 +0000 (01:32 -0400)]
Fix some PHPCS issues

Change-Id: I6289ce362f8dfde7baf2b665f082820898844973

7 years agomediawiki.ui: Add a new 'highlightColor' argument to .button-colors() instead of...
Prateek Saxena [Sun, 15 Mar 2015 23:27:21 +0000 (04:57 +0530)]
mediawiki.ui: Add a new 'highlightColor' argument to .button-colors() instead of using mix()

Results from mix() aren't the same as the ones in the specification.
Added the correct colors as variables

Change-Id: I43e9413fc8d195f897426eeadce44f9ece294706

7 years agoMerge "Fix-up for I2ac604d3c042d"
jenkins-bot [Fri, 26 Jun 2015 05:07:14 +0000 (05:07 +0000)]
Merge "Fix-up for I2ac604d3c042d"

7 years agoFix-up for I2ac604d3c042d
Ori Livneh [Fri, 26 Jun 2015 04:56:49 +0000 (21:56 -0700)]
Fix-up for I2ac604d3c042d

Log time until picked up.

Change-Id: I67310aa2fdbfcb8b1fd394f490ef4885cf596b0c

7 years agoMerge "mw.loader: Omit private modules from the request queue"
jenkins-bot [Fri, 26 Jun 2015 04:18:07 +0000 (04:18 +0000)]
Merge "mw.loader: Omit private modules from the request queue"

7 years agoregistration: 'FilterLogTypes' is a JSON object
Kunal Mehta [Fri, 26 Jun 2015 00:29:33 +0000 (17:29 -0700)]
registration: 'FilterLogTypes' is a JSON object

Change-Id: I01eb28b9d01db8e500e376db9296b4eee85854c1

7 years agoMade User::loadFromId() use READ_NORMAL by default
Aaron Schulz [Thu, 25 Jun 2015 20:03:43 +0000 (13:03 -0700)]
Made User::loadFromId() use READ_NORMAL by default

* This covers CentralAuthHooks::onUserLoadFromSession()
  among other cases (OAuth user loading, ect).

Bug: T92357
Change-Id: I9c90027d8852ff8c1d626c03b5dbd765b95b0ce1

7 years agoAdd new alias for movepage in Bosnian
Niklas Laxström [Thu, 25 Jun 2015 19:54:19 +0000 (21:54 +0200)]
Add new alias for movepage in Bosnian

Requested by Srdjan_m on IRC

Change-Id: Ied1505d6c3a583c938a20fd37c8175693fcb909c

7 years agoMerge "Localisation updates from https://translatewiki.net."
Translation updater bot [Thu, 25 Jun 2015 18:18:52 +0000 (18:18 +0000)]
Merge "Localisation updates from https://translatewiki.net."

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Thu, 25 Jun 2015 18:16:57 +0000 (20:16 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I97aeeac2ad64abd4a8017299f5a79e964155676a

7 years agoFix instances of preg_quote() without second parameter
Bartosz Dziewoński [Thu, 25 Jun 2015 17:43:56 +0000 (19:43 +0200)]
Fix instances of preg_quote() without second parameter

This might work in specific cases, depending on the string we're
quoting, but is never correct. The instance in SpecialAllMessages.php
was resulting in incorrect behavior (and log spam, T103879).

Searched for this regex: preg_quote\((?:\([^)]+?\)|[^,()])+?\)

Change-Id: Icc88775970f4927ddf953e5ad7c5c19d59491573

7 years agoRemove 'direction: ltr' from 'pre' styles
Bartosz Dziewoński [Thu, 25 Jun 2015 11:08:18 +0000 (13:08 +0200)]
Remove 'direction: ltr' from 'pre' styles

The 'direction' and 'unicode-bidi' rules must not be made default.
Right-to-left languages can use preformatted text too!

Follow-up to 054b1c9e3cd82ee96bb6ee2be3026497e5f9f099.

(Also linked T2260, which that commit fixed.)

Bug: T103780
Change-Id: Ieab6b1473e6ce0faed3617d11e57cd2b4f3ef6df

7 years agoMerge "Change "userright" to "user right""
jenkins-bot [Thu, 25 Jun 2015 10:26:02 +0000 (10:26 +0000)]
Merge "Change "userright" to "user right""

7 years agoMerge ""spellcheck" attribute for HTMLForm "text" and "textarea""
jenkins-bot [Thu, 25 Jun 2015 10:17:54 +0000 (10:17 +0000)]
Merge ""spellcheck" attribute for HTMLForm "text" and "textarea""

7 years agoMerge "Add a preposition for clarity"
jenkins-bot [Thu, 25 Jun 2015 08:08:36 +0000 (08:08 +0000)]
Merge "Add a preposition for clarity"

7 years agoMerge "Also support skin.json for updating JSON AutoloadClasses"
jenkins-bot [Thu, 25 Jun 2015 07:18:14 +0000 (07:18 +0000)]
Merge "Also support skin.json for updating JSON AutoloadClasses"

7 years agoMerge "Wrap lines in <pre> and .mw-code by default"
jenkins-bot [Thu, 25 Jun 2015 07:00:09 +0000 (07:00 +0000)]
Merge "Wrap lines in <pre> and .mw-code by default"

7 years agoMerge "Remove the strong formatting for 'revdelete-suppress'"
jenkins-bot [Thu, 25 Jun 2015 06:26:29 +0000 (06:26 +0000)]
Merge "Remove the strong formatting for 'revdelete-suppress'"

7 years agoAlso support skin.json for updating JSON AutoloadClasses
Matthew Flaschen [Fri, 12 Jun 2015 03:31:32 +0000 (23:31 -0400)]
Also support skin.json for updating JSON AutoloadClasses

Bug: T88194
Change-Id: Ib56680e6e0e983184e31c336dcac174922a86551

7 years agoWrap lines in <pre> and .mw-code by default
Timo Tijhof [Thu, 25 Jun 2015 04:38:10 +0000 (05:38 +0100)]
Wrap lines in <pre> and .mw-code by default

No longer create inline scrollbars and/or page-level scrollbarts
with the content escaping the skin container.

This used to be an option in SyntaxHighlighter Geshi (using enclose="div")
but it makes more sense to do by default.

Also move the 'direction' and 'unicode-bidi' rules that currently
live in SyntaxHighlighter extension. Make them the default instead.

Pre-wrap is supported by IE 8+, Firefox 3.5+, Chrome 1+, Opera 8+,
and Safari 3+.

Bug: T103780
Change-Id: Icd8b9bd56d6abc7b64c93e89541cf32c55cf7686

7 years agomediawiki.util: Remove use of deprecated $.isDomElement in test suite
Timo Tijhof [Thu, 25 Jun 2015 01:16:39 +0000 (02:16 +0100)]
mediawiki.util: Remove use of deprecated $.isDomElement in test suite

Follows-up 3fa4519b0ee0c0.

Fixes the warning that was output in all Jenkins builds:
> WARN: 'Use of "isDomElement" is deprecated.'

Change-Id: Ic4a1a22ff5b58d9e6181b4c8f9aaa07d83c27b5e

7 years ago[BREAKING CHANGE] Merge in VE's link input functionality to title widget
Ed Sanders [Sat, 13 Jun 2015 15:48:26 +0000 (16:48 +0100)]
[BREAKING CHANGE] Merge in VE's link input functionality to title widget

Major changes:
* Supports page images and descriptions
* Uses prefix search

Change-Id: Ib463e60cad9651eb338701279f370711ade6030b

7 years agoChange "userright" to "user right"
Amir E. Aharoni [Wed, 24 Jun 2015 22:22:15 +0000 (01:22 +0300)]
Change "userright" to "user right"

I don't see a reason to write it without a space.

Change-Id: I885685fbbead2583f25e7036e47f84b7c152d26e

7 years agoAdd a preposition for clarity
Amir E. Aharoni [Wed, 24 Jun 2015 21:16:38 +0000 (00:16 +0300)]
Add a preposition for clarity

Change-Id: I6a3e6b8e9d601d20f3e4c5907bca36d89f46834a

7 years agoMerge "$wgUseGzip had no effect"
jenkins-bot [Wed, 24 Jun 2015 21:00:16 +0000 (21:00 +0000)]
Merge "$wgUseGzip had no effect"

7 years agoMerge "resourceloader: Pass $context to getDependencies() in PHPUnit tests"
jenkins-bot [Wed, 24 Jun 2015 20:38:16 +0000 (20:38 +0000)]
Merge "resourceloader: Pass $context to getDependencies() in PHPUnit tests"

7 years agoresourceloader: Pass $context to getDependencies() in PHPUnit tests
Andrew Green [Mon, 22 Jun 2015 17:31:01 +0000 (13:31 -0400)]
resourceloader: Pass $context to getDependencies() in PHPUnit tests

Send the ResourceLoaderContext param in calls to getDependencies() in
PHPUnit tests for ResourceLoader. (This so an RL module in CentralNotice
can emit a warning when that parameter is not provided, and still pass
tests. Sending the parameter here will also be necessary when the parameter
is made non-optional in the future.)

Change-Id: I6033e03e2d8a46b4bd7f7a04ae13fd9f387ebd10

7 years agoMerge "Made ReplicatedBagOStuff wrapping the SQL class the default stash"
jenkins-bot [Wed, 24 Jun 2015 20:09:53 +0000 (20:09 +0000)]
Merge "Made ReplicatedBagOStuff wrapping the SQL class the default stash"

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 24 Jun 2015 19:39:54 +0000 (21:39 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I8e6299831393b366e9073856650fda2f72520826

7 years agoMade ReplicatedBagOStuff wrapping the SQL class the default stash
Aaron Schulz [Thu, 21 May 2015 19:05:39 +0000 (12:05 -0700)]
Made ReplicatedBagOStuff wrapping the SQL class the default stash

* To make this work, a slaveOnly flag was added to SqlBagOStuff
  and it no longer prunes expired items on get(), it just treats
  them as missing. The use of garbageCollect() for the writeFactory
  cache and the use of replace() on updates already makes this
  a non-issue.
* This also makes the default $wgMainStash non-bogus.

Bug: T88493
Change-Id: I9d1f31305e08430de29a3cd521cdb10a82dffd10

7 years agoobjectcache: Add tests for ReplicatedBagOStuff
Timo Tijhof [Wed, 24 Jun 2015 19:08:22 +0000 (20:08 +0100)]
objectcache: Add tests for ReplicatedBagOStuff

Fixed PHP runtime warnings:
> Declaration of ReplicatedBagOStuff::getMulti() should be compatible with BagOStuff.
> Declaration of ReplicatedBagOStuff::decr() should be compatible with BagOStuff.

Change-Id: Icf1a0bf2c30408c4a5bef2de0b69ae2162b234d5

7 years agoMerge "Revert r47388 / 8d9243cf3: Use Title::getLocalURL() for rel=canonical links"
jenkins-bot [Wed, 24 Jun 2015 16:05:11 +0000 (16:05 +0000)]
Merge "Revert r47388 / 8d9243cf3: Use Title::getLocalURL() for rel=canonical links"

7 years agoMerge "Add language Doteli (dty)"
jenkins-bot [Wed, 24 Jun 2015 13:03:58 +0000 (13:03 +0000)]
Merge "Add language Doteli (dty)"

7 years agoRevert r47388 / 8d9243cf3: Use Title::getLocalURL() for rel=canonical links
Ori Livneh [Wed, 24 Jun 2015 03:21:16 +0000 (20:21 -0700)]
Revert r47388 / 8d9243cf3: Use Title::getLocalURL() for rel=canonical links

Using relative links for <link rel=canonical> is a missed chance to signal the
preferred hostname and protocol for accessing our sites, which invites Google
(and other search engines) to guess, or to treat the request URL's hostname as
canonical. Compared to that, the number of bytes saved by using a relative link
is insubstantial.

Change-Id: I483b4425c1c14211e67bbb6e7ae077b7faa4ee25

7 years agoDocument that ParserCache::get() may be passed a WikiPage or Article
Kunal Mehta [Tue, 23 Jun 2015 21:57:52 +0000 (14:57 -0700)]
Document that ParserCache::get() may be passed a WikiPage or Article

This is terrible, but at least it is no longer lying.

Change-Id: Id1cc1616b60dbde45a12ce9a23b76282efd1c6a9

7 years agoConfigure logged in session length independently
Sam Smith [Sat, 21 Jun 2014 14:01:52 +0000 (15:01 +0100)]
Configure logged in session length independently

* Add the $wgExtendedLoginCookies configuration variable, which defines
  the set of login cookies that can have their lifetime configured
* Add the $wgExtendedLoginCookieExpiration configuration variable, which
  dictates when the extended lifetime login cookies expire
* Default $wgExtendedLoginCookieExpiration to null so that the current
  behaviour is unaffected

Bug: T68699
Change-Id: I0cc24524e4d7d9d1d21c9fa8a28c7c76b677b96c

7 years agoUpdate OOjs UI to v0.11.6
James D. Forrester [Tue, 23 Jun 2015 22:04:51 +0000 (15:04 -0700)]
Update OOjs UI to v0.11.6

Release notes:

Change-Id: Iec7f1cf857f2ca76a5287306780f1e7e47b49987

7 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Tue, 23 Jun 2015 18:54:09 +0000 (20:54 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I0f85bdd122e4ce9f3e7b809b35aefc6aa2aacca3

7 years agoMerge "API: Change default continuation format for action=query"
jenkins-bot [Tue, 23 Jun 2015 18:40:09 +0000 (18:40 +0000)]
Merge "API: Change default continuation format for action=query"

7 years agoAdd RejectParserCacheValue hook
Ori Livneh [Tue, 23 Jun 2015 05:09:53 +0000 (22:09 -0700)]
Add RejectParserCacheValue hook

Add a new hook, 'RejectParserCacheValue', which allows extensions to reject an
otherwise-successful parser cache lookup. The intent is to allow extensions to
manage the eviction of archaic HTML output from the cache.

Change-Id: I660679a48c46608f859bd52b31d6a888aabcc9ac

7 years agoMerge "Set Southern Kurdish to use Kurdish ordered list style type"
jenkins-bot [Tue, 23 Jun 2015 11:35:48 +0000 (11:35 +0000)]
Merge "Set Southern Kurdish to use Kurdish ordered list style type"

7 years agoMerge "EditPage: Check $wgContentHandlerUseDB"
jenkins-bot [Tue, 23 Jun 2015 11:14:17 +0000 (11:14 +0000)]
Merge "EditPage: Check $wgContentHandlerUseDB"

7 years agoMerge "Hygiene: Use [i] instead of charAt(i) for string index access"
jenkins-bot [Tue, 23 Jun 2015 10:55:51 +0000 (10:55 +0000)]
Merge "Hygiene: Use [i] instead of charAt(i) for string index access"

7 years agoMerge "Added pre-emptive session renewal to avoid "random" submission errors"
jenkins-bot [Tue, 23 Jun 2015 10:51:21 +0000 (10:51 +0000)]
Merge "Added pre-emptive session renewal to avoid "random" submission errors"

7 years agoMerge "MediaWiki.php: Factor out tryNormaliseRedirect"
jenkins-bot [Tue, 23 Jun 2015 09:14:04 +0000 (09:14 +0000)]
Merge "MediaWiki.php: Factor out tryNormaliseRedirect"

7 years agoMerge "Implement wfGlobalCacheKey() for database-agnostic keys"
jenkins-bot [Tue, 23 Jun 2015 07:15:05 +0000 (07:15 +0000)]
Merge "Implement wfGlobalCacheKey() for database-agnostic keys"

7 years agoImplement wfGlobalCacheKey() for database-agnostic keys
Timo Tijhof [Tue, 23 Jun 2015 04:52:30 +0000 (05:52 +0100)]
Implement wfGlobalCacheKey() for database-agnostic keys

Some code paths abuse wfForeignMemcKey() for this purpose. This is semantically
incorrect and seems fragile. Also the empty second argument (for db-prefix) is
either misused or akwardly set to the empty string.

It also creates a namespace conflict between arbitrary application keys (from
the software) and any database names (from users). This commit reduces the
conflict surface down to a single key (namely, "global").

Also added unit tests to assert the implicit restrictions and
assumptions between these cache key functions are valid.

Change-Id: Ia0953b51005fe3de3b881dd1bd64c9d3c85e8c66

7 years agoMediaWiki.php: Factor out tryNormaliseRedirect
Timo Tijhof [Fri, 19 Jun 2015 19:56:36 +0000 (20:56 +0100)]
MediaWiki.php: Factor out tryNormaliseRedirect

This is in preparation for fixing T67402, which requires adding
logic inside this condition block. However the to-be-added code
will influences whether or not a redirect should be made.

In case a redirect is not made, it has to fall through to the next
'elseif' handler in MediaWiki::performRequest(), which is not possible
from inside the 'if' block.

Hence, move it out in a separate block and use a boolean return value
to communicate whether the case has been handled.

This also allows us to unit test this thing. Which is desperately
needed. Albeit ugly as it requires lots of mocking.

Change-Id: If3157f2ff1fd3ab2ca20a5d1f550d864ea62c493

7 years agoMerge "Rename WikiPage::isParserCacheUsed to WikiPage::shouldCheckParserCache"
jenkins-bot [Tue, 23 Jun 2015 04:14:15 +0000 (04:14 +0000)]
Merge "Rename WikiPage::isParserCacheUsed to WikiPage::shouldCheckParserCache"

7 years agoMerge "Suppress deprecation warnings in 'jquery.mwExtension.test'"
jenkins-bot [Tue, 23 Jun 2015 04:00:45 +0000 (04:00 +0000)]
Merge "Suppress deprecation warnings in 'jquery.mwExtension.test'"

7 years agoRename WikiPage::isParserCacheUsed to WikiPage::shouldCheckParserCache
Ori Livneh [Tue, 23 Jun 2015 03:38:43 +0000 (20:38 -0700)]
Rename WikiPage::isParserCacheUsed to WikiPage::shouldCheckParserCache

'isParserCachedUsed' implies that the parser cache usage has already occurred,
and obscures the true purpose of this method, which is to determine whether or
not the requested page *should* be looked up in the parser cache.

Only usage in extensions is in TextExtracts, which I changed to be both
backward- and forward-compatible in If5d5da8eab13.

Change-Id: I7de67937f0e57b1dffb466319192e4d400b867de

7 years agoSuppress deprecation warnings in 'jquery.mwExtension.test'
Timo Tijhof [Tue, 23 Jun 2015 02:39:36 +0000 (03:39 +0100)]
Suppress deprecation warnings in 'jquery.mwExtension.test'

Follows-up b0ee0c0.

Change-Id: I1e38ec9b7e822c177e038b2c83827a3910fe75ad

7 years agoDeclare .icc files to be binary in .gitattributes
Ori Livneh [Tue, 23 Jun 2015 03:48:58 +0000 (20:48 -0700)]
Declare .icc files to be binary in .gitattributes

Follows I2ae35ddad: TinyRGB support for JPG thumbnails.

Change-Id: Ib8e7a74a6bc7b6cfbc674c8e271faa35b1f1a3c7

7 years agoellapsed => elapsed
Ori Livneh [Tue, 23 Jun 2015 03:31:22 +0000 (20:31 -0700)]
ellapsed => elapsed

Also fix some files that don't end with a newline.

Change-Id: Id0672d685b929a5832b42f733dad49683536180a

7 years agoWikiPage::isParserCacheUsed: change 'oldid' to 'oldId'
Ori Livneh [Tue, 23 Jun 2015 03:26:48 +0000 (20:26 -0700)]
WikiPage::isParserCacheUsed: change 'oldid' to 'oldId'

Change-Id: Ic68206a1f276c9e5a5b09ed5e2b0422589dfa161

7 years agoHygiene: Use [i] instead of charAt(i) for string index access
Timo Tijhof [Mon, 22 Jun 2015 23:33:32 +0000 (00:33 +0100)]
Hygiene: Use [i] instead of charAt(i) for string index access

Was mostly this way for IE6 compatibility which is no longer
relevant for our JavaScript runtime.

Change-Id: I7c441c7b40f40bb2974c4da5ea9f7a87119e7462

7 years agoFix undeclared dependency on jquery.mwExtension
Ori Livneh [Mon, 22 Jun 2015 22:12:35 +0000 (15:12 -0700)]
Fix undeclared dependency on jquery.mwExtension

Since jquery.mwExtension is deprecated, fix the undeclared dependency by making
the module not depend on $.ucFirst rather than by declaring the dependency.

Change-Id: I32b57662464e7dde0f61d6875196764fb61dcfba

7 years agoMerge "Make proxy behaviour of detectServer() configurable"
jenkins-bot [Mon, 22 Jun 2015 22:00:06 +0000 (22:00 +0000)]
Merge "Make proxy behaviour of detectServer() configurable"

7 years agoMake proxy behaviour of detectServer() configurable
Gilles Dubuc [Mon, 22 Jun 2015 18:59:05 +0000 (20:59 +0200)]
Make proxy behaviour of detectServer() configurable

Bug: T75510
Change-Id: Ia6540962f8d913d925547189e101124f76d969c7

7 years agoMerge "Restore namespace-number keys in APIQuerySiteinfo siprop=namespaces"
jenkins-bot [Mon, 22 Jun 2015 19:08:25 +0000 (19:08 +0000)]
Merge "Restore namespace-number keys in APIQuerySiteinfo siprop=namespaces"