lhc/web/wiklou.git
8 years agoHide edit toolbar Signature button in non-discussion namespaces
This, that and the other [Mon, 21 Jul 2014 01:36:20 +0000 (11:36 +1000)]
Hide edit toolbar Signature button in non-discussion namespaces

Most wikis only use user signatures on pages set aside from discussion,
(Talk namespaces and sometimes project/main namespaces depending on
the wiki), so having the button available everywhere is confusing.
The few wikis that need the button (especially non-content,
internal/corporate/planning wikis), can add relevant namespaces to the
$wgExtraSignatureNamespaces array in LocalSettings.

This would make it possible to solve bugs like T59727 or T53154.

Since this is a change to default behavior, a release note is added.

Bug: T7645
Change-Id: I7ccf1093b888c7b33721234349ca0ac054c3cd3f

8 years agoAdd base interface for setters in RequestContext and DerivativeContext
Kunal Mehta [Mon, 21 Jul 2014 09:13:23 +0000 (02:13 -0700)]
Add base interface for setters in RequestContext and DerivativeContext

Change-Id: I819633ca5344f73a196623569bb58fd8372d6779

8 years agoMerge "Improve messages related to $wgAllowCategorizedRecentChanges"
jenkins-bot [Mon, 3 Aug 2015 05:26:47 +0000 (05:26 +0000)]
Merge "Improve messages related to $wgAllowCategorizedRecentChanges"

8 years agoMerge "OutputPage: Add \n between </style> and <script>"
jenkins-bot [Mon, 3 Aug 2015 05:10:43 +0000 (05:10 +0000)]
Merge "OutputPage: Add \n between </style> and <script>"

8 years agoregistration: Actually set the merge strategy for $wgExtensionCredits
Kunal Mehta [Sun, 2 Aug 2015 21:56:44 +0000 (14:56 -0700)]
registration: Actually set the merge strategy for $wgExtensionCredits

$wgExtensionCredits is special and needs to be set in the
ExtensionRegistry. Also change the cache key so any bad cache entries
will be ignored.

Follows up 1ebb0f5659667f.

Change-Id: Iec08ab8d9ef7fe7cccde979530839ef553779658

8 years agoMerge "Update the comment in MessagesAzb.php to be consistent with Names.php"
jenkins-bot [Sun, 2 Aug 2015 21:44:02 +0000 (21:44 +0000)]
Merge "Update the comment in MessagesAzb.php to be consistent with Names.php"

8 years agoregistration: Allow setting $wgCapitalLinkOverrides
Kunal Mehta [Sat, 1 Aug 2015 08:37:10 +0000 (01:37 -0700)]
registration: Allow setting $wgCapitalLinkOverrides

Change-Id: Iaf8b44d02adf94ac7f7cb6a8a090b4069b98a88c

8 years agoregistration: Allow setting $wgNamespaceProtection
Kunal Mehta [Sat, 1 Aug 2015 07:39:52 +0000 (00:39 -0700)]
registration: Allow setting $wgNamespaceProtection

Change-Id: Id071eeeb3e734f7833d36610a6b4e786f2d26fa6

8 years agoMerge "registration: Overhaul merging of globals"
jenkins-bot [Sun, 2 Aug 2015 20:29:02 +0000 (20:29 +0000)]
Merge "registration: Overhaul merging of globals"

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sun, 2 Aug 2015 19:33:33 +0000 (21:33 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ib39a676086a94d604ccac932170a992ad67b4a41

8 years agoregistration: Overhaul merging of globals
Kunal Mehta [Sat, 1 Aug 2015 07:38:27 +0000 (00:38 -0700)]
registration: Overhaul merging of globals

Instead of hardcoding specific global settings in ExtensionRegistry,
create specific "merge strategies" that are used to merge globals.

Merge strategies are set for core properties in the ExtensionProcessor,
and extensions can set them for their own configuration settings using
the magic "_merge_strategy" key.

The following merge strategies are included:
* array_merge_recursive - call `array_merge_recursive` on the two arrays
* array_plus - use the "+" operator to combine arrays, preserving
               integer keys
* array_plus_2d - A version of array_plus that works on 2d arrays, used
                  for merging arrays like $wgGroupPermissions
* array_merge - call `array_merge` (default)

This changes the merging of various namespaces related settings to use
array_plus so they actually work.

Bug: T107646
Change-Id: I64cb0553864e3b78b0f203333f58bb73b86a6434

8 years agoUpdate the comment in MessagesAzb.php to be consistent with Names.php
Amir E. Aharoni [Sun, 2 Aug 2015 17:33:35 +0000 (20:33 +0300)]
Update the comment in MessagesAzb.php to be consistent with Names.php

Change-Id: I86ae4c514eebaaea6072c9b67bd35915c7b4c3e4

8 years agoApiQueryInfo: Remove unused variable
Kunal Mehta [Sun, 2 Aug 2015 08:16:14 +0000 (01:16 -0700)]
ApiQueryInfo: Remove unused variable

Change-Id: I071ba28ef8ba9f8b137f5e0ea4c7e1fca35cdede

8 years agoRemove classmap-authoratative: true from composer.json
Bryan Davis [Sun, 2 Aug 2015 02:07:21 +0000 (20:07 -0600)]
Remove classmap-authoratative: true from composer.json

The use of classmap-authoratative: true provides a measurable
performance improvement for MediaWiki on the WMF production cluster, but
that environment really uses the composer.json in the
mediawiki/vendor.git repo and not the composer.json in
mediawiki/core.git. Since this setting is merely performance enhancing
and can be worked around for WMF and other large scale users, it seems
reasonable to change the default behavior to be more friendly to
development use where there may be legitimate reasons for PSR0/4
autoloaders (eg bootstrapped tests in extensions).

Bug: T107682
Change-Id: I805c1b82eb6bc93bf3a74a8a9d07e34f2f8c645f

8 years agoUse notification on successful preferences save
Geoffrey Mon [Sun, 7 Jun 2015 00:51:41 +0000 (20:51 -0400)]
Use notification on successful preferences save

"Now 98.6% leaner!"

* Use Xml::tags() for cleaner (old) successbox generation.
* Use #mw-preferences-success for the old successbox
  to make its removal more specific.
* Use the mw.notify box for saved prefs message.
* Remove box on keydown or mousedown in #preftoc or
  .prefsection.
* Remove success=1 querystring on load to prevent
  unnecessary reappearance of notification on reload.

Bug: T19496
Change-Id: Ibecbe21aa52ddc061d4bb27815f6fa5161a96735

8 years agoUse XmlSelect in SpecialListusers
Geoffrey Mon [Sat, 1 Aug 2015 21:15:58 +0000 (21:15 +0000)]
Use XmlSelect in SpecialListusers

Bug: T93234
Change-Id: I25cdd8f7eb1bbfd893d201f6c68f5ccfabe70bf3

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sat, 1 Aug 2015 19:33:52 +0000 (21:33 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ibdd18216129fb8ab0180d07083521e4a0520c30c

8 years agoresourceloader: Remove ESI support (previously disabled)
Timo Tijhof [Fri, 31 Jul 2015 19:34:10 +0000 (12:34 -0700)]
resourceloader: Remove ESI support (previously disabled)

These were never enabled or used in production and are not
compatible with the upcoming async changes (T107399). To avoid
having to maintain compatibility with this, remove it for now.

The current on-going request to operations for ESI support is unrelated
to this code.

Considered making makeResourceLoaderLink() protected as it's not
used anywhere in @wikimedia Git outside mediawiki-core. And the unit
test actually treated it as protected already. However it's called
in SpecialJavaScriptTest so leaving that as-is for now.

In Icba6d7a87b239 the signature will change again with the removal
of the $loadCall parameter, which is obsolete in an async world
due to document.write being forbidden.

Change-Id: I9f557cc794638ffd15329934865e21e1027f7cfa

8 years agoOutputPage: Add \n between </style> and <script>
Fomafix [Sat, 1 Aug 2015 12:24:45 +0000 (12:24 +0000)]
OutputPage: Add \n between </style> and <script>

The ResourceLoader does not add a newline anymore.

Change-Id: Idfdbd0a8836ab2ec7abef1530ca883fb6d618eb4

8 years agoregistration: Fix merging of $wgRevokePermissions
Kunal Mehta [Sat, 1 Aug 2015 06:40:07 +0000 (23:40 -0700)]
registration: Fix merging of $wgRevokePermissions

It's the same as $wgGroupPermissions.

Change-Id: I9c289219c53314970e7af5998c00d6a372bb00cb

8 years agoregistration: Fix "namespaces" schema to match code
Kunal Mehta [Sat, 1 Aug 2015 06:01:59 +0000 (23:01 -0700)]
registration: Fix "namespaces" schema to match code

The "namespaces" property is supposed to be an array of objects, not an
object. Document the properties of the individual objects, and mark the
actually required ones as required.

Change-Id: Ie3cee3e720b962073a1ff098659faa9f11d44fe3

8 years agoMerge "Revision::newNullRevision: Make sure the Title is set in the constructor"
jenkins-bot [Sat, 1 Aug 2015 01:05:13 +0000 (01:05 +0000)]
Merge "Revision::newNullRevision: Make sure the Title is set in the constructor"

8 years agoRevision::newNullRevision: Make sure the Title is set in the constructor
Kunal Mehta [Sat, 1 Aug 2015 00:00:48 +0000 (17:00 -0700)]
Revision::newNullRevision: Make sure the Title is set in the constructor

Revision::__construct() calls Revision::getContentModel() to initialize
the 'content_model' field. If a Title object is not set, it will try to
look up the page in the slave database, which might be behind. At that
point it will default to wikitext, which is problematic during imports.

By passing the Title object in the constructor instead of afterwards,
the content model should be intialized properly.

Bug: T91170
Change-Id: I7fea996ea5b723967272af8cb344150aea10bb54

8 years agoMerge "mediawiki.filewarning: Use 'visibility: hidden' instead of 'display: none'"
jenkins-bot [Sat, 1 Aug 2015 00:00:38 +0000 (00:00 +0000)]
Merge "mediawiki.filewarning: Use 'visibility: hidden' instead of 'display: none'"

8 years agoMerge "mw.widgets.DateInputWidget: Allow not having a date selected"
jenkins-bot [Sat, 1 Aug 2015 00:00:17 +0000 (00:00 +0000)]
Merge "mw.widgets.DateInputWidget: Allow not having a date selected"

8 years agoRevert I4afaecd8: Avoiding writing sessions for no reason
Ori.livneh [Fri, 31 Jul 2015 23:13:35 +0000 (23:13 +0000)]
Revert I4afaecd8: Avoiding writing sessions for no reason

I4afaecd8 reduced the frequency at which the TTL of sessions keys is reset, on
the assumption that we were doing it a whole lot more often than necessary.
We can now assume that this assumption was false, because an uncommitted revert
of this change which I pushed to production earlier caused the rate of session
loss errors in the logs to plummet.

Bug: T102199
Change-Id: Ie67f4ca000afcf3d4f44155c13f91cd4c286866d

8 years agoFix spelling mistake in ResourceLoader inline documentation
Ori Livneh [Fri, 31 Jul 2015 02:07:43 +0000 (19:07 -0700)]
Fix spelling mistake in ResourceLoader inline documentation

Change-Id: Ie099eed12ba45aeb1d3b8b08c911222af25e42fa

8 years agomediawiki.filewarning: Use 'visibility: hidden' instead of 'display: none'
Bartosz Dziewoński [Fri, 31 Jul 2015 21:27:47 +0000 (23:27 +0200)]
mediawiki.filewarning: Use 'visibility: hidden' instead of 'display: none'

Setting 'display: none' causes OOjs UI to get confused when it's
trying to show the popup and calculating its position.

Bug: T107554
Change-Id: Iaf8d728c58efd67cdb965b4cd529164aaabc02be

8 years agoMerge "Monolog: Add Formatter that uses MWExceptionHandler::getRedactedTraceAsString"
jenkins-bot [Fri, 31 Jul 2015 19:52:02 +0000 (19:52 +0000)]
Merge "Monolog: Add Formatter that uses MWExceptionHandler::getRedactedTraceAsString"

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 31 Jul 2015 19:29:37 +0000 (21:29 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ibfb6ba5ceb9cc7cc8365891a76936c7754afabea

8 years agoMonolog: Add Formatter that uses MWExceptionHandler::getRedactedTraceAsString
Bryan Davis [Thu, 30 Jul 2015 19:02:35 +0000 (13:02 -0600)]
Monolog: Add Formatter that uses MWExceptionHandler::getRedactedTraceAsString

Add a Monolog Formatter class that uses
MWExceptionHandler::getRedactedTraceAsString when outputting stack
traces.

Bug: T107440
Change-Id: Ic580c137e27aac95435f7b073a18cf61820b172f

8 years agomw.widgets.DateInputWidget: Allow not having a date selected
Bartosz Dziewoński [Thu, 30 Jul 2015 22:36:19 +0000 (00:36 +0200)]
mw.widgets.DateInputWidget: Allow not having a date selected

* Allow empty value, that is, no date being selected. Display
  an appropriate label when that is the case.
* Start with no date selected, rather than today's date.
* When the field is empty and gets focus, set the date to today, on
  the assumption that this is likely what the user wants. Permit
  emptying the field, though.
* Highlight today's date on the calendar.

Bonus cleanup:

* Update the UI from #setValue, immediately when needed.
* Improve validation of incoming values.
* Correct some documentation.
* Correct some bad copy-paste in styles which caused disabled widget
  to not display correctly.

Change-Id: I7a1f7ff20eb6fc21ea59ecfe48deb9305c8e29e8

8 years agoresourceloader: Use WrappedString library to merge RLQ inline scripts
Timo Tijhof [Fri, 31 Jul 2015 00:13:04 +0000 (17:13 -0700)]
resourceloader: Use WrappedString library to merge RLQ inline scripts

Update unit test to account for the internal 'html' prop now
being an array instead of string. And update expected values to
no longer have a trailing line break.

Bug: T27202
Change-Id: I105b6ef2e64ab8b891562e16940edb88592bd415

8 years agoXmlSelect: Tweak documentation
Bartosz Dziewoński [Thu, 30 Jul 2015 21:03:19 +0000 (23:03 +0200)]
XmlSelect: Tweak documentation

Correct some variable names and types, also some words.

Change-Id: I7ff0664f7ac4f26be8427a2140e2280aa7620657

8 years agoUse Perso-Arabic numberic system for South Azeri (azb)
mjbmr [Thu, 30 Jul 2015 14:31:40 +0000 (14:31 +0000)]
Use Perso-Arabic numberic system for South Azeri (azb)

Change-Id: Ifb0e8edc1ca4d0720ceb048a46589158b34eec52

8 years agoMerge "Added sanitizeHdrs() tests for Swift"
jenkins-bot [Fri, 31 Jul 2015 09:32:03 +0000 (09:32 +0000)]
Merge "Added sanitizeHdrs() tests for Swift"

8 years agoMerge "array_shift returns null on empty array, not false"
jenkins-bot [Fri, 31 Jul 2015 01:43:26 +0000 (01:43 +0000)]
Merge "array_shift returns null on empty array, not false"

8 years agoarray_shift returns null on empty array, not false
Matthew Flaschen [Fri, 31 Jul 2015 01:27:07 +0000 (21:27 -0400)]
array_shift returns null on empty array, not false

Change-Id: I690f9dd0de11ff60f9cba9f401c6e456e7ba8bd6

8 years agoAdd wikimedia/wrappedstring library
Timo Tijhof [Fri, 31 Jul 2015 00:31:58 +0000 (17:31 -0700)]
Add wikimedia/wrappedstring library

Depends on I9a468fd65f1 in mediawiki/vendor.

Change-Id: I3f952aa059d930130a8d712e39798cc1031e0a25

8 years agoMerge "Actually run the Less compilation tests"
jenkins-bot [Thu, 30 Jul 2015 23:33:12 +0000 (23:33 +0000)]
Merge "Actually run the Less compilation tests"

8 years agoMake Special:MIMESearch expensive again
Ori Livneh [Thu, 30 Jul 2015 22:54:18 +0000 (15:54 -0700)]
Make Special:MIMESearch expensive again

Anything slow enough to get reaped by query timeouts is expensive, right?
This reverts change I88826ae7bf.

Bug: T107265
Change-Id: Ic9ed00f164d8fa076bb53649f77a9e5ac1e33a6d

8 years agoMerge "Switch search-suggest message to use Message::parse()"
jenkins-bot [Thu, 30 Jul 2015 22:35:23 +0000 (22:35 +0000)]
Merge "Switch search-suggest message to use Message::parse()"

8 years agoMerge "Throw exception on falsy server in RedisConnectionPool."
jenkins-bot [Thu, 30 Jul 2015 21:57:15 +0000 (21:57 +0000)]
Merge "Throw exception on falsy server in RedisConnectionPool."

8 years agoMerge "Use XmlSelect in ProtectionForm"
jenkins-bot [Thu, 30 Jul 2015 21:47:47 +0000 (21:47 +0000)]
Merge "Use XmlSelect in ProtectionForm"

8 years agoThrow exception on falsy server in RedisConnectionPool.
Matthew Flaschen [Thu, 30 Jul 2015 21:38:42 +0000 (17:38 -0400)]
Throw exception on falsy server in RedisConnectionPool.

Surprisingly, IP::splitHostAndPort does not return false for these.

Also, tweak documentation of splitHostAndPort.

Bug: T107498
Change-Id: I4230b1e7ba0fa2d28be8de3e0e7b064e58f0579c

8 years agoresourceloader: Restore minification for 'user' and 'site' module
Timo Tijhof [Wed, 29 Jul 2015 23:50:10 +0000 (16:50 -0700)]
resourceloader: Restore minification for 'user' and 'site' module

Follows-up 19a40cd3ad, Id599b6be4.

TODO: Change minification to happen per-module instead of per-request so that
these hacks aren't needed (T107377).

Change-Id: Iaa281ee117f2ae7a51884d256dfbb1807224fc52

8 years agoMerge "Add getImageInfo to mw.Upload"
jenkins-bot [Thu, 30 Jul 2015 21:20:38 +0000 (21:20 +0000)]
Merge "Add getImageInfo to mw.Upload"

8 years agoMerge "Use XmlSelect in WebInstallerPage"
jenkins-bot [Thu, 30 Jul 2015 21:20:32 +0000 (21:20 +0000)]
Merge "Use XmlSelect in WebInstallerPage"

8 years agoUse XmlSelect in ProtectionForm
Geoffrey Mon [Thu, 30 Jul 2015 20:00:41 +0000 (20:00 +0000)]
Use XmlSelect in ProtectionForm

Bug: T93234
Change-Id: I47e08fb364dda6e4f59cd84c4c135e267e2c7bd9

8 years agoUse XmlSelect in WebInstallerPage
Geoffrey Mon [Thu, 30 Jul 2015 19:07:48 +0000 (19:07 +0000)]
Use XmlSelect in WebInstallerPage

Bug: T93234
Change-Id: Iba0067b4fac381e715e92d87c682261eef8d6669

8 years agoMerge "Revert "Use OOUI HTMLForm for Special:Watchlist""
jenkins-bot [Thu, 30 Jul 2015 19:05:20 +0000 (19:05 +0000)]
Merge "Revert "Use OOUI HTMLForm for Special:Watchlist""

8 years agoAdd getImageInfo to mw.Upload
Mark Holmquist [Thu, 30 Jul 2015 18:52:38 +0000 (13:52 -0500)]
Add getImageInfo to mw.Upload

Just a little shortcut and so you don't need to rely on the promises.

Bug: T107460
Change-Id: I1e36f3cd8cb6b50ec5db6d77512ce03cd98a2caf

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Thu, 30 Jul 2015 18:56:15 +0000 (20:56 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I9b25e1abaaf2e6e4ba21e4c540a79bdb30521cea

8 years agoRevert "Use OOUI HTMLForm for Special:Watchlist"
Legoktm [Thu, 30 Jul 2015 18:55:20 +0000 (18:55 +0000)]
Revert "Use OOUI HTMLForm for Special:Watchlist"

Issues with spacing (T107311), probably shouldn't have
been merged right before the branch cut.

This reverts commit 9508c5bd576ee4206eb8e89b7d2ba82985f4e151.

Change-Id: Ibf2ca5a33b8ab0f7381c720c6c92fbfd7a7c819d

8 years agoMerge "Add pageid to API parse output"
jenkins-bot [Thu, 30 Jul 2015 18:45:40 +0000 (18:45 +0000)]
Merge "Add pageid to API parse output"

8 years agoresourceloader: Convert inline statements to queued functions
Timo Tijhof [Mon, 27 Jul 2015 23:40:52 +0000 (16:40 -0700)]
resourceloader: Convert inline statements to queued functions

Instead of having inline statements be plain statements wrapped
in an if-conditional block, convert them to inline functions
pushed into a queue.

The queue is kept in-memory until the startup module is loaded
at which point it transforms into a function that is immediately
invoked.

This is a prerequisite to making the top queue asynchronous.
Until then these functions will just run immediately as they
occur in the HTML after the startup module.

This is based on the previously reverted commit e86e5f8460.

Bug: T107399
Change-Id: Ifb38efca219c10ab973ad4c4ebb21c6a4239b005

8 years agoAdd pageid to API parse output
Geoffrey Mon [Wed, 29 Jul 2015 12:32:21 +0000 (12:32 +0000)]
Add pageid to API parse output

Bug: T27134
Change-Id: I4ef765e18020f93d7861e62d20649c89fca0f828

8 years agoUse STRAIGHT_JOIN in SpecialWhatlinkshere query
Aaron Schulz [Wed, 29 Jul 2015 20:51:42 +0000 (13:51 -0700)]
Use STRAIGHT_JOIN in SpecialWhatlinkshere query

* Also added a type hint to avoid IDE errors in this area

Bug: T106682
Change-Id: I825eedaceb0c0323de85466e48582d72c57b201a

8 years agoObjectFactory: add support for setter injection
Bryan Davis [Thu, 30 Jul 2015 17:24:07 +0000 (11:24 -0600)]
ObjectFactory: add support for setter injection

Extend ObjectFactory::getObjectFromSpec() to support setter injection on
created objects when the specification includes a 'calls' member.

Bug: T107440
Change-Id: Ie2ece2e9658dd2d895d3935da4dc2da8a0a316e2

8 years agoMerge "logger: Fix undefined variable $data"
jenkins-bot [Thu, 30 Jul 2015 02:00:12 +0000 (02:00 +0000)]
Merge "logger: Fix undefined variable $data"

8 years agoAdded sanitizeHdrs() tests for Swift
Aaron Schulz [Thu, 30 Jul 2015 01:57:23 +0000 (18:57 -0700)]
Added sanitizeHdrs() tests for Swift

Change-Id: I2e3c3225c729e5220ca16f6ef4518da49e7f721c

8 years agologger: Fix undefined variable $data
Timo Tijhof [Thu, 30 Jul 2015 01:26:52 +0000 (18:26 -0700)]
logger: Fix undefined variable $data

Follows-up 77a397125f. Also add unit test that would've caught
this "PHP Notice: Undefined variable: data" error.

Change-Id: I8a3bd9c8b685c2aa7a466e3d3c61ffa027be02fa

8 years agoresourceloader: Ensure 'user' loads after 'site' (asynchronously)
Timo Tijhof [Wed, 29 Jul 2015 23:38:28 +0000 (16:38 -0700)]
resourceloader: Ensure 'user' loads after 'site' (asynchronously)

Regression from 19a40cd3ad which made the 'site' module load asynchronously,
but the 'user' module was still loaded synchronously which meant it ran before
the site module finished.

Full test script at <https://gist.github.com/Krinkle/5db1d237da241b243485>.

Also:
* This changes the 'user' module to load asynchronously.
* Similar to 19a40cd3ad for site module, this makes the styles for the user
  module load twice. Harmless but doesn't look pretty internally.
* Remove the obsolete XXX-comment from 0b5389d98d (r56770).
* Add comment documenting the fact that the 'excludepages' feature can cause
  User/common.js and User/vector.js to be mis-ordered when the user previews
  common.js edits. This has always been the case (since 2009) and is merely
  being documented here.

Bug: T32358
Bug: T106736
Bug: T102077
Change-Id: Id599b6be42613529fb7f4dd3273f36ccadb3a09e

8 years agoMerge "Decolonize 'viewsourcetext' and 'viewyourtext' messages"
jenkins-bot [Thu, 30 Jul 2015 00:53:45 +0000 (00:53 +0000)]
Merge "Decolonize 'viewsourcetext' and 'viewyourtext' messages"

8 years agoMerge "HTMLForm: Correct documentation"
jenkins-bot [Thu, 30 Jul 2015 00:53:41 +0000 (00:53 +0000)]
Merge "HTMLForm: Correct documentation"

8 years agoHave RedisConnectionPool explicitly implement Psr\Log\LoggerAwareInterface
Kunal Mehta [Wed, 29 Jul 2015 22:38:40 +0000 (15:38 -0700)]
Have RedisConnectionPool explicitly implement Psr\Log\LoggerAwareInterface

Follows up 93f360a01b49

Change-Id: I0266be9771b7bf58de9f573249f28c6f28adf059

8 years agoRedisConnectionPool: convert to PSR3 logging
Bryan Davis [Wed, 29 Jul 2015 20:32:42 +0000 (14:32 -0600)]
RedisConnectionPool: convert to PSR3 logging

Convert from wfDebug* logging to Psr\Log\LoggerInterface. Use structured
logging data to tag log messages the associated redis server.

Bug: T88649
Change-Id: I5fc4c68e52b13a688bdcc93d9defc9f973323241

8 years agoresourceloader: Implement support for 'site' into mw.loader
Timo Tijhof [Fri, 24 Jul 2015 04:00:39 +0000 (21:00 -0700)]
resourceloader: Implement support for 'site' into mw.loader

* No longer a dedicated <script> with only=scripts.
  This means it creates no extra script request and becomes a versioned
  request using data from the startup module.

* No longer in group=site.
  This means it collapses into the existing bottom queue.
  Not even one dedicated script request, but zero.

* No longer exclude from module storage. This can be cached like any other module.
  It was previously excluded because it was already loaded separately.

* Change mw.loader#execute to special-case the 'site' module with $.globalEval.

* Add hack to ensure the styles of the 'site' module still load without
  JavaScript, in the top, and after the ResourceLoaderDynamicStyles marker.
  This unfortunately stays its own request. Not sure how to avoid that.

Bug: T32358
Bug: T106736
Bug: T102077
Change-Id: I291a8c3aae1a71760bec58161891c1bd77c9b724

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 29 Jul 2015 19:20:43 +0000 (21:20 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I5de4b112125b9be8f2aa2ae23a0defaaec323407

8 years agoMerge "Populate rev_content_model when a move causes default content model to change"
jenkins-bot [Wed, 29 Jul 2015 17:45:17 +0000 (17:45 +0000)]
Merge "Populate rev_content_model when a move causes default content model to change"

8 years agoMerge "Add Content-Length header to thumb.php redirects"
jenkins-bot [Wed, 29 Jul 2015 16:10:52 +0000 (16:10 +0000)]
Merge "Add Content-Length header to thumb.php redirects"

8 years agoAdd Content-Length header to thumb.php redirects
Giuseppe Lavagetto [Wed, 29 Jul 2015 10:12:55 +0000 (12:12 +0200)]
Add Content-Length header to thumb.php redirects

Without the Content-Length header, the response is sent with
Transfer-Encoding: Chunked, which is somehow mangled by
mod_fastcgi. Varnish then claims the response is malformed and declines
to process it, sending the client a 503 instead.

This is a followup of 0ee9e717f49b9e15bd63fd66f3d0967939c35b05

Bug: T84842
Change-Id: Ia610a43789e6ff14cfc0964f285bbec39c890152

8 years agoMerge "mw.widgets.CalendarWidget: Silence jshint for one line, not entire file"
jenkins-bot [Wed, 29 Jul 2015 15:53:37 +0000 (15:53 +0000)]
Merge "mw.widgets.CalendarWidget: Silence jshint for one line, not entire file"

8 years agomw.widgets.CalendarWidget: Silence jshint for one line, not entire file
Prateek Saxena [Wed, 29 Jul 2015 01:03:30 +0000 (06:33 +0530)]
mw.widgets.CalendarWidget: Silence jshint for one line, not entire file

Follows up I6f760f7c32e2e6ed2008e897af72fb9e17dd663b

Suppress warning at the specific line that uses the static keyword
rather than the entire file.

> Expected an identifier and instead saw 'static' (a reserved word). (W024)

Change-Id: I0e4f9062b01b82893205da9e72c41acae3d6967f

8 years agoSwitch search-suggest message to use Message::parse()
Erik Bernhardson [Wed, 29 Jul 2015 15:06:29 +0000 (08:06 -0700)]
Switch search-suggest message to use Message::parse()

This was recently made more explicit and use escape() which matches
the english definition, but frwiki (and maybe others) has overridden
these messages on wiki via MediaWiki:search-suggest to include HTML
code.  To get the correct output from that HTML we need to use ::parse()
instead of ::text()

Change-Id: I5251dead7f1262728b4cab5bcfc5b0d1b9acc761

8 years agoSpecial:WhatLinksHere Don't show edit links for non-direct-editing pages
Florian [Thu, 23 Jul 2015 16:15:08 +0000 (18:15 +0200)]
Special:WhatLinksHere Don't show edit links for non-direct-editing pages

It's possible, that pages links to a page, which aren't editable directly
through action=edit. Don't show an edit link for such pages.

Bug: T106680
Change-Id: I01ff6dbd5b4e9fff84795f7c3d8ada23c09c7ae8

8 years agoAvoid revision lookup post-save in InfoAction::invalidateCache()
Kunal Mehta [Wed, 29 Jul 2015 07:42:56 +0000 (00:42 -0700)]
Avoid revision lookup post-save in InfoAction::invalidateCache()

We just saved the page, so we know the revision id. Pass it on to
InfoAction::invalidateCache() so it doesn't have to be looked up again.

Follows-up 0452855044d2d.

Change-Id: I990c0da09fae94f403f3550069036d3f208090a6

8 years agoDefer the InfoAction purge in onArticleEdit()
Aaron Schulz [Wed, 29 Jul 2015 01:06:48 +0000 (18:06 -0700)]
Defer the InfoAction purge in onArticleEdit()

Change-Id: I73fba15c26c12bea1abad219611e660fb3901a86

8 years agoMerge "RedisBagOStuff: if no alternatives, skip master link status check"
jenkins-bot [Tue, 28 Jul 2015 23:53:20 +0000 (23:53 +0000)]
Merge "RedisBagOStuff: if no alternatives, skip master link status check"

8 years agoRedisBagOStuff: if no alternatives, skip master link status check
Ori Livneh [Tue, 28 Jul 2015 23:22:57 +0000 (16:22 -0700)]
RedisBagOStuff: if no alternatives, skip master link status check

If RedisBagOStuff::getConnection() is able to establish a connection, only
check the master link status if automatic failover is enabled and if there are
other viable servers left to consider. If there are no servers left to
consider, or if automatic failover is not configured, just return the
connection handle without subjecting it to further tests.

This will have the side-effect of making RedisBagOStuff compatible with
Nutcracker, which does not implement the INFO command. This is because when
MediaWiki is configured to use Nutcracker, the server pool will consist of a
single server (namely, Nutcracker itself), and thus there will be no other
server to consider, so INFO will never be executed.

Change-Id: I3812ec5a0b22df122bdf44350bc0496574c02ce8

8 years agoUpdate OOjs UI to v0.12.2
James D. Forrester [Tue, 28 Jul 2015 23:19:36 +0000 (16:19 -0700)]
Update OOjs UI to v0.12.2

Release notes:
 https://git.wikimedia.org/blob/oojs%2Fui.git/v0.12.2/History.md

Change-Id: Ic7f4be9eee8c17e00270de8b731ec6206a35f9ad

8 years agoMerge "Track key authentication metrics"
jenkins-bot [Tue, 28 Jul 2015 22:53:29 +0000 (22:53 +0000)]
Merge "Track key authentication metrics"

8 years agoMerge "Update liuggio/statsd-php-client: v1.0.12 -> v1.0.16"
jenkins-bot [Tue, 28 Jul 2015 22:52:45 +0000 (22:52 +0000)]
Merge "Update liuggio/statsd-php-client: v1.0.12 -> v1.0.16"

8 years agoHTMLForm: Correct documentation
Bartosz Dziewoński [Tue, 28 Jul 2015 22:18:39 +0000 (00:18 +0200)]
HTMLForm: Correct documentation

Change-Id: I84f4d886907b2ae988956563fda48e78afb3cfa6

8 years agoTrack key authentication metrics
Gergő Tisza [Tue, 21 Apr 2015 08:33:40 +0000 (08:33 +0000)]
Track key authentication metrics

Logs a 'login' event for logins via Special:UserLogin
and API action=login. Does not log for implicit login after
account creation and for autologin (e.g. based on an active
CentralAuth global login).

Logs an 'accountcreation' event for account creation via
Special:UserLogin/signup and API action=createaccount. Does not
log for autocreation.

Both successful and unsuccessful attempts are logged, except for
failures that throw exceptions (internal errors + some permission
errors).

Bug: T91701
Change-Id: I101b11d05400b073065da10f1e537412309d9102

8 years agoUpdate liuggio/statsd-php-client: v1.0.12 -> v1.0.16
Gergő Tisza [Wed, 22 Jul 2015 22:35:22 +0000 (15:35 -0700)]
Update liuggio/statsd-php-client: v1.0.12 -> v1.0.16

vendor patch: I307b58f4abe4d615ac9b2f86f50d0c5d6b906d83

Bug: T106457
Change-Id: I6e013485175c63a984d2de205dc45704483d149b

8 years agoLog errors in Http::request()
Gergő Tisza [Wed, 8 Jul 2015 07:39:52 +0000 (07:39 +0000)]
Log errors in Http::request()

Instead of silently discarding errors in server-side HTTP requests,
log them to a 'http' channel.

Make ForeignAPIFile::httpGet() (which sort of reimplements Http::get())
log to the same channel, for consistency.

Bug: T103043
Change-Id: Ibf552e22adc7fde4a751f92e92dad6ceba2f335c

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Tue, 28 Jul 2015 19:30:27 +0000 (21:30 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I550fd6329d15eff1f06d70dd6fde7dfb519f9adb

8 years agoFix Southern Luri autonym
mjbmr [Sat, 25 Jul 2015 18:29:06 +0000 (18:29 +0000)]
Fix Southern Luri autonym

Received as feedback from Southern Luri community:
"Dumeni" means "Under" (Southern)

Also removing Northern Luri from the fallback list.
Southern Luri speekers can't understand Northern Luri,
but everyone in the region can understand Persian
(official language in the region).

Follow-up to I68154c19880ee59da05493fb72e735e61c3183aa
Follow-up to I1099cb846f029df850126e59306849b0eec88e7b
Follow-up to I3cc17d61c6f99b42f6befb39a4c1d6544558cd7e

Change-Id: Iaa1d3da94261f23a2e7b6f488ebfcce5cf457413

8 years agoMerge "Don't retry invalid thumbnail requests due to impossible width"
jenkins-bot [Tue, 28 Jul 2015 18:06:59 +0000 (18:06 +0000)]
Merge "Don't retry invalid thumbnail requests due to impossible width"

8 years agoMerge "Implement redirects in CssContent"
jenkins-bot [Tue, 28 Jul 2015 18:03:30 +0000 (18:03 +0000)]
Merge "Implement redirects in CssContent"

8 years agoMerge "Gather more information about pre rendering 500s"
jenkins-bot [Tue, 28 Jul 2015 18:01:39 +0000 (18:01 +0000)]
Merge "Gather more information about pre rendering 500s"

8 years agoMerge "Put "userjs-" in <code> in apihelp-options-description"
jenkins-bot [Tue, 28 Jul 2015 17:56:18 +0000 (17:56 +0000)]
Merge "Put "userjs-" in <code> in apihelp-options-description"

8 years agoImplement redirects in CssContent
Kunal Mehta [Sun, 19 Jul 2015 16:16:16 +0000 (11:16 -0500)]
Implement redirects in CssContent

Just like ad9f14d662f959 which was for JavaScript. The redirect will be
of the form "/* #REDIRECT */@import url(...);".

Bug: T73201
Bug: T35973
Change-Id: I10bae44af4b4923f8797172702974cd45dc25ab4

8 years agoFix typo: requiered -> required
umherirrender [Tue, 28 Jul 2015 17:21:58 +0000 (19:21 +0200)]
Fix typo: requiered -> required

Thanks to Ricordisamoa

Follow-Up: I095c545f77aa50d6be4cd48588bd1ae1c82cf343
Change-Id: I3c40b02865170ba0391f3637a5bebb6058c053fd

8 years agoDon't retry invalid thumbnail requests due to impossible width
Gilles Dubuc [Tue, 28 Jul 2015 15:21:17 +0000 (17:21 +0200)]
Don't retry invalid thumbnail requests due to impossible width

At the moment this isn't going to work in production, because varnish
turns 400s into 500s. But I'll try to fix that separately.

Bug: T106740
Change-Id: Id156ee4ac986ad2a6d7e49dfe8aa7577764eca11

8 years agoGather more information about pre rendering 500s
Gilles Dubuc [Tue, 28 Jul 2015 14:57:18 +0000 (16:57 +0200)]
Gather more information about pre rendering 500s

Bug: T106740
Change-Id: I4a1436f1724fcc74d4c1076b21fcdb3b5d58b1de

8 years agoMerge "Fixed various FileBackendDBRepoWrapper errors found in IDE"
jenkins-bot [Tue, 28 Jul 2015 14:08:22 +0000 (14:08 +0000)]
Merge "Fixed various FileBackendDBRepoWrapper errors found in IDE"

8 years agoMerge "Clear the stat cache in addMissingMetadata() to avoid more POSTs"
jenkins-bot [Tue, 28 Jul 2015 13:45:00 +0000 (13:45 +0000)]
Merge "Clear the stat cache in addMissingMetadata() to avoid more POSTs"

8 years agoMerge "Improved addMissingMetadata() on POST failure"
jenkins-bot [Tue, 28 Jul 2015 13:44:16 +0000 (13:44 +0000)]
Merge "Improved addMissingMetadata() on POST failure"