(bug 40585) Don't drop 'step="any"' in HTML input fields.

The default value for "step" is "1" which effectively bans any decimal
number from being entered into an 'type="number"' field and makes
HTMLFloatField unusable.

This is a backport of 6dc4039270af99413cc7c3bf85b136d9a79e7497.

Change-Id: Ibda2b49395705c5902c751525b75213653b0ea5d
Allow preferences that need not be rendered in Special:Preferences

Extensions can use their own interface for user preferences, with the
help of the action=options API.

For example, Universal Language Selector has a different UI to
allow anonymous and logged in users to set language related preferences.

Validation for the preference values is up to the extensions.

Change-Id: I18a5ffb5cc202c59ba76b86cfb63e49010cc1881
(bug 44010) Pass context to UserGetLanguageObject

Only way to avoid messing with wrong request contexts.
Had to add recursion guard too.

Change-Id: Idc11b54752450321e01d92004e08fc95fb6170e6
Weaken the recursion guard on RequestContext::getLanguage()

Just log and soldier on, since for some reason we are seeing a lot of
these exceptions at the moment, with multiple root causes. Based on Matt
Walker's I49dbc2d7. Updates Idc11b547. See bug 44754.

Change-Id: I2e8c062741c1b2ec2acd68dc76d3fb6efb113571
(bug 44010) FauxRequest leaks cookie data from primary request

Change-Id: I6baf972352fd69660c09a5d413ff55b81aa31305
Merge "(bug 40585) Don't drop 'step="any"' in HTML input fields." into REL1_20
Merge changes I6baf9723,I2e8c0627 into REL1_20

* changes:
  (bug 44010) FauxRequest leaks cookie data from primary request
  Weaken the recursion guard on RequestContext::getLanguage()
raise PHPUnit default timeouts

default ..  2s -> 10s
medium ... 10s -> 30s

I originally thought that using PHPUnit timeout system was a good idea
but that is causing more harm than being helpful. Now default to ten
seconds.

Change-Id: If10a9b6df967130838a253d986b2ed623d8e3b0a
Add missing release notes for various commits.

Follows-up Ibda2b49395, I0975e5c6a6, Ia6535f1090, Idc11b54752.

Change-Id: I7e8c78dd71fc6a8aaa630bec97c3ed08de99b720
(Bug 45355) Read of arbitrary files through mwdoc-filter.php

The file maintenance/mwdoc-filter.php can be abused under certain server
configurations to read the contents of arbitrary files.

In case you
 - you have deleted the maintenance folder or
 - you have that folder denied in the server configuration or
 - the server is processing .htaccess overrides or
 - you are using PHP 5.4.0 (or later) or
 - you have register_globals disabled
it is believed that you are not vulnerable.

See https://bugzilla.wikimedia.org/45355 for details.

Change-Id: I3c49439b25896a6100ce415629353bccfc84490a
Preserve caller expectations for behaviour of sslVerifyHost

(bug 42441) The previous patch unnecessarily broke backwards
compatibility in the Http::request() API, following cURL's broken
conventions for sslVerifyHost instead of the boolean interpretation
expected by all existing callers. This change reverts that one, and
fixes the bug in another way. See Ia6535f10.

Also don't bother wrapping the $this->sslVerifyHost access with isset()
since it's always set.

Change-Id: Ia4e1689249b6ac515b859ea2eca1dcff3e63098c
Preserve caller expectations for behaviour of sslVerifyHost

(bug 42441) The previous patch unnecessarily broke backwards
compatibility in the Http::request() API, following cURL's broken
conventions for sslVerifyHost instead of the boolean interpretation
expected by all existing callers. This change reverts that one, and
fixes the bug in another way. See Ia6535f10.

Also don't bother wrapping the $this->sslVerifyHost access with isset()
since it's always set.

Change-Id: Id8d9374d9e9cbda87539ae725b1d3edfc728f449
Merge "Preserve caller expectations for behaviour of sslVerifyHost" into REL1_20
(bug 43518) API action=unblock should return the user name, not the full user object

Change-Id: I830e210122a6608b4b599bb0b59c1c99b073c06d
Merge "(Bug 45355) Read of arbitrary files through mwdoc-filter.php" into REL1_20
Updated release notes and version number

Change-Id: I3ca4455eeee788cc3345a810da8431e9764cd9df
Merge branch 'REL1_20' of https://gerrit.wikimedia.org/r/p/mediawiki/core into REL1_20