lhc/web/wiklou.git
8 years agoParser: Avoid producing <span></span> in the TOC
Brad Jorsch [Wed, 15 Apr 2015 17:44:28 +0000 (13:44 -0400)]
Parser: Avoid producing <span></span> in the TOC

If someone renames a section but wants old targeted links to still work,
<span id="old-anchor"></span> is the usual solution. And sometimes
people put it inside the section header markup, like

 == <span id="old-anchor"></span>New name ==

since putting it before makes it be considered part of the previous section
while putting it after causes the browser to scroll the section header
off the screen.

But this has the unfortunate side effect that the TOC text for that
section will be "<span></span>New name". We should strip that useless
empty span.

Bug: T96153
Change-Id: I47a33ceb79d48f6d0c38fa3b3814a378feb5e31e

8 years agoUpdate environments.yml file according to the documentation
Željko Filipin [Wed, 8 Jul 2015 15:56:59 +0000 (17:56 +0200)]
Update environments.yml file according to the documentation

Bug: T105174
Change-Id: Ib049d12f24444029f5aeb8ef3149c731c2b9c810

8 years agomediawiki.api: Include 'mobile' target in mediawiki.api.parse module
Timo Tijhof [Wed, 8 Jul 2015 13:45:42 +0000 (14:45 +0100)]
mediawiki.api: Include 'mobile' target in mediawiki.api.parse module

Bug: T104940
Change-Id: Ic654f0e38b27b41df13c0423460c1c12c9aec9c3

8 years agomediawiki.api: Refactor to use server.respondImmediately
Timo Tijhof [Mon, 6 Jul 2015 14:12:30 +0000 (15:12 +0100)]
mediawiki.api: Refactor to use server.respondImmediately

* Simplifies code a lot and removes the need to explicitly flush
  and handle the request queue with respond().
  This was especially annoying when a request spawned others as
  they wouldn't be in the queue yet.

* Make tests more explicit and resilient by specifying what they
  respond to instead of assigning to requests[i] directly.
  This also makes the failure better if one request isn't made,
  instead of throwing for accessing properties on undefined objects.

* Avoid relying on test order for badToken().
  Follows-up 7b05096bcae0. Tests should be atomic and not rely on
  order. This is already important as QUnit re-orders failed tests.
  And in the future they may run concurrently.

  Resolve using a unique name (like the other tests).

  Also, the previous test wasn't asserting that badToken() works,
  it was merely asserting that getToken() works and that it wasn't
  yet cached. The new test will fetch and purge its own token.

Change-Id: I26d22ace6c5df19d7144779be1a625aede79749f

8 years agoMerge "HTMLTextAreaField: Honor 'rows' setting in OOUI format"
jenkins-bot [Wed, 8 Jul 2015 09:22:31 +0000 (09:22 +0000)]
Merge "HTMLTextAreaField: Honor 'rows' setting in OOUI format"

8 years agoMerge "OutputPage: Only set <link hreflang=x-default> on wiki/pages with variants"
jenkins-bot [Wed, 8 Jul 2015 06:58:06 +0000 (06:58 +0000)]
Merge "OutputPage: Only set <link hreflang=x-default> on wiki/pages with variants"

8 years agoMerge "Improved fail-over in ReplicatedBagOStuff for redis"
jenkins-bot [Wed, 8 Jul 2015 06:44:42 +0000 (06:44 +0000)]
Merge "Improved fail-over in ReplicatedBagOStuff for redis"

8 years agoMerge "Move `$.extend( OO.ui, mw.widgets )` hack to 'mediawiki.widgets' module"
jenkins-bot [Wed, 8 Jul 2015 06:37:28 +0000 (06:37 +0000)]
Merge "Move `$.extend( OO.ui, mw.widgets )` hack to 'mediawiki.widgets' module"

8 years agoMerge "Add Content-Length header to thumb.php error responses"
jenkins-bot [Wed, 8 Jul 2015 06:29:51 +0000 (06:29 +0000)]
Merge "Add Content-Length header to thumb.php error responses"

8 years agoMerge "qunit: Restore sinon.sandbox after teardown instead of before"
jenkins-bot [Wed, 8 Jul 2015 06:29:47 +0000 (06:29 +0000)]
Merge "qunit: Restore sinon.sandbox after teardown instead of before"

8 years agoMerge "Update Sinon.JS to 1.15.4"
jenkins-bot [Wed, 8 Jul 2015 06:29:25 +0000 (06:29 +0000)]
Merge "Update Sinon.JS to 1.15.4"

8 years agoMerge "Update QUnit to v1.18.0"
jenkins-bot [Wed, 8 Jul 2015 06:26:43 +0000 (06:26 +0000)]
Merge "Update QUnit to v1.18.0"

8 years agoUpdate OOjs UI to v0.11.8
James D. Forrester [Wed, 8 Jul 2015 01:40:19 +0000 (18:40 -0700)]
Update OOjs UI to v0.11.8

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

Change-Id: I701c504acf0d527916f1925bbf49177cc9c0d883

8 years agoHTMLTextAreaField: Honor 'rows' setting in OOUI format
Kunal Mehta [Wed, 8 Jul 2015 01:27:03 +0000 (18:27 -0700)]
HTMLTextAreaField: Honor 'rows' setting in OOUI format

And throw an exception if 'cols' is set, since it won't work.

Requires eed0f5294b0080 in OOUI.

Bug: T104682
Change-Id: I8e09402a01cecac8a90497d31b3b1ca15ff2d949

8 years agoMerge "Explain API action=parse&disablepp option more clearly"
jenkins-bot [Wed, 8 Jul 2015 00:42:00 +0000 (00:42 +0000)]
Merge "Explain API action=parse&disablepp option more clearly"

8 years agoExplain API action=parse&disablepp option more clearly
This, that and the other [Wed, 8 Jul 2015 00:30:52 +0000 (10:30 +1000)]
Explain API action=parse&disablepp option more clearly

Brought up by Purodha on translatewiki.net Support page.

Also change a few ungrammatical "Disable"s to "Omit"s.

Change-Id: I9a14fa16cc166471d66c53489e8186ec09297399

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

Change-Id: I3d2c6254a862d635419018c2c4fe3f824ae43a93

8 years agoMerge "resourceloader: Set a TTL for minification cache entries"
jenkins-bot [Tue, 7 Jul 2015 18:53:35 +0000 (18:53 +0000)]
Merge "resourceloader: Set a TTL for minification cache entries"

8 years agobackupTextPassTest: Disable flaky test 'testCheckpointPlain'
Timo Tijhof [Tue, 7 Jul 2015 18:42:43 +0000 (19:42 +0100)]
backupTextPassTest: Disable flaky test 'testCheckpointPlain'

Follows-up 9107fb539111de.

Ref T70653

Change-Id: I493c0a97bd9b5213a3f1f6ed0b2a6c591fd67d3b

8 years agoAPI: Move stats update for API module execution to when the module is actually executed
Brad Jorsch [Tue, 7 Jul 2015 17:46:17 +0000 (13:46 -0400)]
API: Move stats update for API module execution to when the module is actually executed

The place it was before could easily be reached without actually
executing (or even constructing) the module.

Change-Id: I6f807adc9cbf71c5d7b83c7eec43965dce1d2a16

8 years agoAdd alias for Special:ChangeContentModel
raymond [Tue, 7 Jul 2015 14:16:23 +0000 (16:16 +0200)]
Add alias for Special:ChangeContentModel

Follow up to fa31bf1675af725.

Change-Id: I2589b8a48c82484f8ef561d9562b28f613fa15b1

8 years agoresourceloader: Set a TTL for minification cache entries
Timo Tijhof [Tue, 7 Jul 2015 16:40:00 +0000 (17:40 +0100)]
resourceloader: Set a TTL for minification cache entries

Follows-up 458e7cabbbafd. HHVM's APC cache doesn't have any
limitation or eviction logic. Thus entries without a TTL will
linger indefinitely.

At time of writing over 99% of APC entries were from "resourceloader:filter"
because there are far more unpopular resources than popular ones.

A fixed TTL is suboptimal as it will also cause popular resources
(e.g. startup module, or jquery) to be re-minified every day.

Beware this isn't one single minification. It's one minification,
for every JS/CSS resource, on every app server, for many different
lang/skin/config variations.

Bug: T104769
Change-Id: Ib62c320da0eeede68aad3f2294006ec7dcf1df55

8 years agoqunit: Restore sinon.sandbox after teardown instead of before
Timo Tijhof [Tue, 7 Jul 2015 14:46:32 +0000 (15:46 +0100)]
qunit: Restore sinon.sandbox after teardown instead of before

This was causing pending (mocked) XHR requests to sometimes be
cleaned up prematurely.

As a general rule, setup always calls its parent first. And teardown
always calls its parent last. The inner callback runs within the
scope of the outer one and should still have acces to the sinon mocks.

Change-Id: Ic4d9243c04af73e529b689e650d35ddabaa7f4b9

8 years agoUpdate Sinon.JS to 1.15.4
Timo Tijhof [Tue, 7 Jul 2015 09:28:16 +0000 (10:28 +0100)]
Update Sinon.JS to 1.15.4

* Code
  http://sinonjs.org/releases/sinon-1.15.4.js
  http://sinonjs.org/releases/sinon-ie-1.15.4.js

* Change log
  http://sinonjs.org/Changelog.txt
  https://github.com/cjohansen/Sinon.JS/commits/v1.15.4

Mainly:
* Support XHR.responseType 'json'.
* Remove deprecation warnings from sinon.mock().

Change-Id: I4e0d8f044eb2841ab361b1efc76fb36797f15e42

8 years agoUpdate QUnit to v1.18.0
Timo Tijhof [Tue, 7 Jul 2015 09:22:35 +0000 (10:22 +0100)]
Update QUnit to v1.18.0

* Code
  https://code.jquery.com/qunit/qunit-1.18.0.css
  https://code.jquery.com/qunit/qunit-1.18.0.js

* Change log
  https://github.com/jquery/qunit/blob/1.18.0/History.md

Change-Id: I9da13eedb2f9b5ee936aaa658c3da6ce222cfa0a

8 years agoMerge "API: Use ApiBase::PARAM_HELP_MSG_PER_VALUE for 'prop' in query+watchlist"
jenkins-bot [Tue, 7 Jul 2015 14:05:59 +0000 (14:05 +0000)]
Merge "API: Use ApiBase::PARAM_HELP_MSG_PER_VALUE for 'prop' in query+watchlist"

8 years agoMerge "mediawiki.searchSuggest: Allow multiple suggestion fields"
jenkins-bot [Tue, 7 Jul 2015 13:47:50 +0000 (13:47 +0000)]
Merge "mediawiki.searchSuggest: Allow multiple suggestion fields"

8 years agoMove `$.extend( OO.ui, mw.widgets )` hack to 'mediawiki.widgets' module
Bartosz Dziewoński [Tue, 7 Jul 2015 13:23:25 +0000 (15:23 +0200)]
Move `$.extend( OO.ui, mw.widgets )` hack to 'mediawiki.widgets' module

OO.ui.infuse assumes all widgets are in the OO.ui. namespace.
We previously made that happen on document-ready in
'mediawiki.page.ready' module, but that's too late: document-ready
handlers defined by other modules' can run earlier.
Let's just do it in 'mediawiki.widgets' after all widgets are defined.

Change-Id: Ib2184bf87d72db64d1565d742ef9f1be37f24b6f

8 years agoOutputPage: Only set <link hreflang=x-default> on wiki/pages with variants
Timo Tijhof [Tue, 7 Jul 2015 10:32:03 +0000 (11:32 +0100)]
OutputPage: Only set <link hreflang=x-default> on wiki/pages with variants

Follows-up 91d8a51825.

Having the default variant advertised seems useful, however for
wikis and/or pages that have no variants or translated versions,
outputting this header doesn't seem useful.

https://support.google.com/webmasters/answer/189077 doesn't
justify sending it unconditionally.

To try out, setting $wgLanguageCode = 'zh'; will result in all
pages having hreflang=x-default and all variants. And setting to
'en' or 'de' will result in none of those link tags.

Change-Id: I21cd072534ae1df960209e657b19c96889ece27c

8 years agoMerge "mediawiki.ui: Add @activeColor argument to the .button-colors() mixin"
jenkins-bot [Tue, 7 Jul 2015 04:45:24 +0000 (04:45 +0000)]
Merge "mediawiki.ui: Add @activeColor argument to the .button-colors() mixin"

8 years agomediawiki.ui: Add @activeColor argument to the .button-colors() mixin
Prateek Saxena [Fri, 27 Mar 2015 06:26:07 +0000 (11:56 +0530)]
mediawiki.ui: Add @activeColor argument to the .button-colors() mixin

Have kept the colors same for now except for .mw-ui-button:active and
.mw-ui-button.mw-ui-checked . Can be changed later once the design
team has decided.

Change-Id: I7c418b970c5e5fa95f740ecf3d90622bf7f02364

8 years agoUpdate composer-merge-plugin to v1.2.1
Bryan Davis [Mon, 6 Jul 2015 22:46:45 +0000 (16:46 -0600)]
Update composer-merge-plugin to v1.2.1

Fixes bug in optimized autoloader generation on initial plugin install.

Change-Id: If637d2b5583b32895fe8839478e7e553927f1d68
Requires: I22d1fd4044320613c6ba61ac5e84263e5af4ff27
Bug: T104037

8 years agoMerge "TitleInputWidget: Add 'relative' option"
jenkins-bot [Mon, 6 Jul 2015 22:41:31 +0000 (22:41 +0000)]
Merge "TitleInputWidget: Add 'relative' option"

8 years agoAdd Content-Length header to thumb.php error responses
Ori Livneh [Mon, 6 Jul 2015 20:49:45 +0000 (13:49 -0700)]
Add Content-Length header to thumb.php error responses

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.

Change-Id: I977387bf3e039926df58e3e5a14d0d0bd55201c4

8 years agoMerge "Allow hooks to abort lines in EnhancedRC"
jenkins-bot [Mon, 6 Jul 2015 20:29:23 +0000 (20:29 +0000)]
Merge "Allow hooks to abort lines in EnhancedRC"

8 years agoMerge "API: Avoid caching when prop=info&intestactions=... is used"
jenkins-bot [Mon, 6 Jul 2015 20:17:39 +0000 (20:17 +0000)]
Merge "API: Avoid caching when prop=info&intestactions=... is used"

8 years agoAPI: Use ApiBase::PARAM_HELP_MSG_PER_VALUE for 'prop' in query+watchlist
Kunal Mehta [Tue, 23 Jun 2015 21:23:07 +0000 (14:23 -0700)]
API: Use ApiBase::PARAM_HELP_MSG_PER_VALUE for 'prop' in query+watchlist

Change-Id: I5e956f4b4dccb2b109d514332e4347252ce846c4

8 years agoMerge "Add hook EnhancedChangesListModifyBlockLineData"
jenkins-bot [Mon, 6 Jul 2015 20:04:58 +0000 (20:04 +0000)]
Merge "Add hook EnhancedChangesListModifyBlockLineData"

8 years agoMerge "Add tests for Special:BlankPage"
jenkins-bot [Mon, 6 Jul 2015 19:30:12 +0000 (19:30 +0000)]
Merge "Add tests for Special:BlankPage"

8 years agoMerge "Localisation updates from https://translatewiki.net."
Translation updater bot [Mon, 6 Jul 2015 19:29:52 +0000 (19:29 +0000)]
Merge "Localisation updates from https://translatewiki.net."

8 years agoMerge "Add SpecialPageTestBase to simplify testing of special pages"
jenkins-bot [Mon, 6 Jul 2015 19:29:01 +0000 (19:29 +0000)]
Merge "Add SpecialPageTestBase to simplify testing of special pages"

8 years agoAdd tests for Special:BlankPage
addshore [Mon, 6 Jul 2015 10:49:58 +0000 (12:49 +0200)]
Add tests for Special:BlankPage

This uses SpecialPageTestBase and demonstrates how that class
should be used.

Change-Id: Ibbf3fdcb172d7c1c71491d27b534faa65fd9be63

8 years agoAdd SpecialPageTestBase to simplify testing of special pages
addshore [Sat, 9 Aug 2014 00:37:44 +0000 (01:37 +0100)]
Add SpecialPageTestBase to simplify testing of special pages

This is copied from Wikibase. A follow up change adds a test
for Special:BlankPage to demonstrate how it works.

Change-Id: I3c34fd17ceb0049b160ec4f821474de457533983

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

Change-Id: Ifcf5396c7f9a8a6abb43dd9233dc6c55b6ca00c1

8 years agoMerge "Add {{bidi:}} syntax for directionality-safe arguments"
jenkins-bot [Mon, 6 Jul 2015 16:57:53 +0000 (16:57 +0000)]
Merge "Add {{bidi:}} syntax for directionality-safe arguments"

8 years agoAPI: Avoid caching when prop=info&intestactions=... is used
Brad Jorsch [Mon, 6 Jul 2015 16:07:45 +0000 (12:07 -0400)]
API: Avoid caching when prop=info&intestactions=... is used

Whether the actions pass or not depends on the current user, including
the results of several hooks and whether the current user is blocked.

Also, we can clean up the test for public inprops slightly.

Change-Id: I7e2610dd609c52711355b640778f795520a4ff8c

8 years agoMerge "mediawiki.jqueryMsg: Declare dependency on user.options"
jenkins-bot [Mon, 6 Jul 2015 14:58:09 +0000 (14:58 +0000)]
Merge "mediawiki.jqueryMsg: Declare dependency on user.options"

8 years agoMerge "editWarning: Declare dependency on user.options"
jenkins-bot [Mon, 6 Jul 2015 08:46:45 +0000 (08:46 +0000)]
Merge "editWarning: Declare dependency on user.options"

8 years agoMerge "Count API module instantiations and Hook runs"
jenkins-bot [Mon, 6 Jul 2015 07:41:28 +0000 (07:41 +0000)]
Merge "Count API module instantiations and Hook runs"

8 years agoTitleInputWidget: Add 'relative' option
Kunal Mehta [Sat, 4 Jul 2015 07:39:41 +0000 (00:39 -0700)]
TitleInputWidget: Add 'relative' option

Currently the JavaScript widget will return a value that is relative to
the namespace, so for "Category:Foo", it will return "Foo". This is
problematic for server-side forms that want a full title returned, so
make this configurable.

Change-Id: I605df2ca41831cae1c8f0a3331600d4487e7798f

8 years agoeditWarning: Declare dependency on user.options
Derk-Jan Hartman [Sun, 5 Jul 2015 20:34:53 +0000 (22:34 +0200)]
editWarning: Declare dependency on user.options

Bug: T102564
Change-Id: Ia4bc7860e6783c1ff9d94a9097c4e19cd34d57f8

8 years agomediawiki.jqueryMsg: Declare dependency on user.options
Derk-Jan Hartman [Sun, 5 Jul 2015 20:38:00 +0000 (22:38 +0200)]
mediawiki.jqueryMsg: Declare dependency on user.options

Change-Id: I8219a78fdecf6cdc33a677811fd4160cd56a46b7

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sun, 5 Jul 2015 19:38:02 +0000 (21:38 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ic760a22b691004d0b1f8bae63aacf33ad1c4fc99

8 years agoi18nize [[Special:RandomInCategory]] submit button
Douglas Gardner [Mon, 8 Jun 2015 19:17:42 +0000 (20:17 +0100)]
i18nize [[Special:RandomInCategory]] submit button

This commit fixes a regression caused by an earlier refactor of the
Special:RandomInCategory page, which introduced message reuse. This
commit splits the message again.

Bug: T101717
Change-Id: Iabfe172b2e1d8464262b244337789bca388460f8

8 years agoMerge "Use localization for server default timezone on Special:Preferences"
jenkins-bot [Sun, 5 Jul 2015 16:55:34 +0000 (16:55 +0000)]
Merge "Use localization for server default timezone on Special:Preferences"

8 years agoMerge "Removing obsolete `-moz-inline-block` property"
jenkins-bot [Sun, 5 Jul 2015 12:42:28 +0000 (12:42 +0000)]
Merge "Removing obsolete `-moz-inline-block` property"

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sat, 4 Jul 2015 17:56:59 +0000 (19:56 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Iaf200f28c06c3dddc582581c5c69bbb260e8351e

8 years agomediawiki.searchSuggest: Allow multiple suggestion fields
Fomafix [Sat, 4 Jul 2015 12:47:36 +0000 (12:47 +0000)]
mediawiki.searchSuggest: Allow multiple suggestion fields

Store form data in context instead of a single private variable.

Bug: T104763
Change-Id: I9c8827eab1e074cf2b5a573942cf983dbda07149

8 years agoUse localization for server default timezone on Special:Preferences
umherirrender [Sun, 19 Apr 2015 17:39:23 +0000 (19:39 +0200)]
Use localization for server default timezone on Special:Preferences

The timezone list on Special:Preferences contains all time zones with a
localized region and also an option to use the system default value.
The message for this option gets the current server timezone as
parameter, but that parameter is not localized.
Refactor the timezone list processing into a new function and call it at
the beginning to do a lookup for the localized name and use it, if it
exists in the array.

Also changed from procedural style to object oriented style for the
DateTime processing.

Bug: T33516
Change-Id: I00e81324d0d16fbe6c9811480210ab6513461823

8 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 3 Jul 2015 18:16:54 +0000 (20:16 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: If1a80bd1be0256e5ba3d60b15454f194515f1d47

8 years agoMerge "Add missing dependency to mediawiki.widgets"
jenkins-bot [Fri, 3 Jul 2015 12:55:08 +0000 (12:55 +0000)]
Merge "Add missing dependency to mediawiki.widgets"

8 years agoRemoving obsolete `-moz-inline-block` property
Bartosz Dziewoński [Fri, 3 Jul 2015 10:41:56 +0000 (12:41 +0200)]
Removing obsolete `-moz-inline-block` property

Bug: T103605
Change-Id: Id689cfd629d94a82999020121d4275c5daac4e58

8 years agoAllow hooks to abort lines in EnhancedRC
Matthias Mullie [Thu, 2 Jul 2015 12:32:50 +0000 (14:32 +0200)]
Allow hooks to abort lines in EnhancedRC

Bug: T104564
Change-Id: I4a2f97d83f38071984d571773a6b09b6b6643d6d

8 years agoAdd hook EnhancedChangesListModifyBlockLineData
Matthias Mullie [Thu, 2 Jul 2015 12:09:41 +0000 (14:09 +0200)]
Add hook EnhancedChangesListModifyBlockLineData

Introduce a new hook to allow (single) block-level entries.
Very similar to EnhancedChangesListModifyLineData.

Bug: T104399
Change-Id: I6b4715277d44e5f09d7a230b33e956676aeab1c2

8 years agoMerge "RawAction: Clean up max-age/s-maxage computation"
jenkins-bot [Fri, 3 Jul 2015 08:12:07 +0000 (08:12 +0000)]
Merge "RawAction: Clean up max-age/s-maxage computation"

8 years agoMerge "API: Use message-per-value for apihelp-query+revisions+base-param-prop"
jenkins-bot [Fri, 3 Jul 2015 06:19:16 +0000 (06:19 +0000)]
Merge "API: Use message-per-value for apihelp-query+revisions+base-param-prop"

8 years agoAPI: Remove some unused i18n messages
Brad Jorsch [Thu, 2 Jul 2015 18:59:00 +0000 (14:59 -0400)]
API: Remove some unused i18n messages

apihelp-query+deletedrevisions-param-limit and
apihelp-query+deletedrevisions-param-prop aren't actually used. Instead
these are documented with apihelp-query+revisions+base-param-limit and
apihelp-query+revisions+base-param-prop, respectively.

Change-Id: I4a337e21695c34ab5fe44411978fcce78dce4ac7

8 years agoAPI: Use message-per-value for apihelp-query+revisions+base-param-prop
umherirrender [Thu, 2 Jul 2015 18:29:32 +0000 (20:29 +0200)]
API: Use message-per-value for apihelp-query+revisions+base-param-prop

Use message-per-value for message
apihelp-query+revisions+base-param-prop to allow smaller strings
for translation and to add a parameter for the contentmodel for
prop=parsetree, as already done for action=parse&prop=parsetree.
Each prop in a message also will show up a new parameter on the help
page without the adjust of the translation (but than in english instead
of fully skip it).

Change-Id: I8aaa061cb59ec788f8f8e09e8088ba1064e3aa1e

8 years agoFauxRequest: Add @since for new setHeaders and setCookie methods
Timo Tijhof [Fri, 3 Jul 2015 01:38:50 +0000 (02:38 +0100)]
FauxRequest: Add @since for new setHeaders and setCookie methods

Follows-up 53b0df09ab69.

Change-Id: Ia854aef848062624eccc6a5b25b7d1f1f8fbc444

8 years agoRawAction: Clean up max-age/s-maxage computation
Timo Tijhof [Fri, 3 Jul 2015 01:27:05 +0000 (02:27 +0100)]
RawAction: Clean up max-age/s-maxage computation

No behavioural change, but makes the code easier to understand.
It was somewhat all scattered.

* Remove outdated comment about 24 hours.
  - ForcedRawSMaxage defaults to 5 minutes.
  - SquidMaxage defaults to 5 hours (wmf-config: 31 days).

Change-Id: I7f3b67780ba9e8c024dcbd68772495b91abb2d01

8 years agoCount API module instantiations and Hook runs
Ori Livneh [Thu, 2 Jul 2015 00:25:24 +0000 (17:25 -0700)]
Count API module instantiations and Hook runs

We previously had counts for hooks and modules as a side-effect of having them
profiled. We removed the profiling for performance reasons, which left us
without counts also. But the performance of counters is not a concern, and
their signal value not insubstantial. So introduce them here.

Fix getModulePath() to not crash while we're at it.

Change-Id: Ic04daf475b936b942833362c7a979dde671b3ef4

8 years agoMerge "Log http error in ForeignAPIRepo::httpGet"
jenkins-bot [Thu, 2 Jul 2015 22:39:15 +0000 (22:39 +0000)]
Merge "Log http error in ForeignAPIRepo::httpGet"

8 years agoMerge "Add cookies and improve headers in FauxRequest"
jenkins-bot [Thu, 2 Jul 2015 19:03:45 +0000 (19:03 +0000)]
Merge "Add cookies and improve headers in FauxRequest"

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

Change-Id: If712259c32498a8c9ce1242e828bebe9c04f8805

8 years agoAdd cookies and improve headers in FauxRequest
Brad Jorsch [Thu, 2 Jul 2015 16:40:35 +0000 (12:40 -0400)]
Add cookies and improve headers in FauxRequest

For testing, it can be useful for a FauxRequest to actually contain
cookies. And for convenience, it's useful to allow setting headers by
passing an array rather than by making multiple calls to ->setHeader().

Change-Id: I3b84246e954aae594490927d2b0a57336af2e3a5

8 years agoMerge "Revision: Interpret a NULL rev_content_model as the default model"
jenkins-bot [Thu, 2 Jul 2015 15:02:08 +0000 (15:02 +0000)]
Merge "Revision: Interpret a NULL rev_content_model as the default model"

8 years agoMerge "Correct mw-ui-icon size"
jenkins-bot [Thu, 2 Jul 2015 10:27:08 +0000 (10:27 +0000)]
Merge "Correct mw-ui-icon size"

8 years agoMerge "Made SqlBagOStuff set() wrap setMulti()"
jenkins-bot [Thu, 2 Jul 2015 08:14:36 +0000 (08:14 +0000)]
Merge "Made SqlBagOStuff set() wrap setMulti()"

8 years agoMerge "Declare and document $wgStatsdServer and $wgStatsdMetricPrefix"
jenkins-bot [Thu, 2 Jul 2015 08:12:47 +0000 (08:12 +0000)]
Merge "Declare and document $wgStatsdServer and $wgStatsdMetricPrefix"

8 years agoMerge "Add class to items in changeslist legend"
jenkins-bot [Thu, 2 Jul 2015 08:10:29 +0000 (08:10 +0000)]
Merge "Add class to items in changeslist legend"

8 years agoMerge "Make an apihelp message less repetitive"
jenkins-bot [Thu, 2 Jul 2015 08:09:14 +0000 (08:09 +0000)]
Merge "Make an apihelp message less repetitive"

8 years agoMerge "SpecialDoubleRedirects: Remove redirect=no for action=edit"
jenkins-bot [Thu, 2 Jul 2015 08:07:48 +0000 (08:07 +0000)]
Merge "SpecialDoubleRedirects: Remove redirect=no for action=edit"

8 years agoMerge "Fix reference to nonexistent ApiBase::getModulePathString in inline docs"
jenkins-bot [Thu, 2 Jul 2015 08:03:28 +0000 (08:03 +0000)]
Merge "Fix reference to nonexistent ApiBase::getModulePathString in inline docs"

8 years agoDeclare and document $wgStatsdServer and $wgStatsdMetricPrefix
Timo Tijhof [Fri, 26 Jun 2015 03:01:49 +0000 (04:01 +0100)]
Declare and document $wgStatsdServer and $wgStatsdMetricPrefix

Follows-up 87dfc20.

Change-Id: Ie1b799a8f2a73b974ba8c930cfabc00e377d6eee

8 years agoRevision: Interpret a NULL rev_content_model as the default model
Kunal Mehta [Thu, 2 Jul 2015 07:40:40 +0000 (00:40 -0700)]
Revision: Interpret a NULL rev_content_model as the default model

If a revision using the default content model is saved, the
rev_content_model field will be set to NULL in order to save space.
However, Revision::getContentModel() was using Title::getContentModel()
when it found a NULL, which will return the current content model rather
than the default. So change that to use the default content model, as
returned by ContentHandler::getDefaultModelFor() rather than the current
one.

Change-Id: I7011812b6b131170b3c593917ad263bcba83898d

8 years agoMade WANObjectCache::getCheckKey() automatically init the key
Aaron Schulz [Fri, 22 May 2015 05:46:25 +0000 (22:46 -0700)]
Made WANObjectCache::getCheckKey() automatically init the key

* This still allows If-Modified-Since logic but does not
  need to broadcast initialization values just because a
  key fell out of cache. The value can differ between DCs
  anyway via skew, this just lets them drift more. Actual
  purge events are still broadcasted, which is what matters.
* The User class has now been simplified given this change.
* Added more general comments to getCheckKeyTime().

Change-Id: Ic1f4bbb1947e0d1dd47499c9e9dc86991c30580c

8 years agoMerge "Improved job pickup time stats for delayed jobs"
jenkins-bot [Thu, 2 Jul 2015 03:09:08 +0000 (03:09 +0000)]
Merge "Improved job pickup time stats for delayed jobs"

8 years agoChange "? :" to "?:"
Kunal Mehta [Thu, 2 Jul 2015 02:15:07 +0000 (19:15 -0700)]
Change "? :" to "?:"

Anomie pointed out that I am the only person who writes it as "? :", and
that all other instances in core use no space.

Change-Id: I01b68eed5f866fa7582fb4257f795c4c2d1244d1

8 years agoFix reference to nonexistent ApiBase::getModulePathString in inline docs
Ori Livneh [Thu, 2 Jul 2015 01:48:34 +0000 (18:48 -0700)]
Fix reference to nonexistent ApiBase::getModulePathString in inline docs

Change-Id: Iad6420ea88c4cf94c234be7f01a2ed2854e02919

8 years agoEnsure DerivativeContext has a $stats property
Ori Livneh [Thu, 2 Jul 2015 00:38:25 +0000 (17:38 -0700)]
Ensure DerivativeContext has a $stats property

Should have been a part of Ie10db1c15 but wasn't.

Change-Id: I4552390e1476766ae2d0946df3836a8a14182b34

8 years agoMerge "Account for unset visiting watchers"
jenkins-bot [Wed, 1 Jul 2015 23:57:51 +0000 (23:57 +0000)]
Merge "Account for unset visiting watchers"

8 years agoCorrect mw-ui-icon size
jdlrobson [Wed, 1 Jul 2015 23:16:54 +0000 (16:16 -0700)]
Correct mw-ui-icon size

Icons should be 24px by 24px
1em = 16px,
1.5em = 24px

Change-Id: I98564ad2b02668efa616a6f3c536c78440edcac9

8 years agoDon't try looking for phpunit if it is already loaded
Kunal Mehta [Wed, 1 Jul 2015 20:40:53 +0000 (13:40 -0700)]
Don't try looking for phpunit if it is already loaded

If phpunit is installed via composer, it will already be present in the
autoloader, so including other paths won't do anything.

Also add some output to make it easier to figure out where phpunit is
being loaded from.

Change-Id: Id6d23626b158779f6ff56e6d0f20d519f2f4ad18

8 years agoImproved job pickup time stats for delayed jobs
Aaron Schulz [Wed, 1 Jul 2015 19:30:06 +0000 (12:30 -0700)]
Improved job pickup time stats for delayed jobs

* The delay time should not count

Bug: T102743
Change-Id: I9e8b1f33b65681fd9f4f667233bce280bf6f227d

8 years agoAdd explicit GENDER to logentry-contentmodel-change
Amir E. Aharoni [Wed, 1 Jul 2015 20:32:08 +0000 (23:32 +0300)]
Add explicit GENDER to logentry-contentmodel-change

Change-Id: Iad544e1b61661acd3e54777859e72a59349fabb5

8 years agoMerge "Localisation updates from https://translatewiki.net."
Translation updater bot [Wed, 1 Jul 2015 19:51:45 +0000 (19:51 +0000)]
Merge "Localisation updates from https://translatewiki.net."

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

Change-Id: I730d53aaf52bb6000ff33d06f325e5ec30280f87

8 years agoMerge "Update OOjs UI to v0.11.7"
jenkins-bot [Wed, 1 Jul 2015 19:38:31 +0000 (19:38 +0000)]
Merge "Update OOjs UI to v0.11.7"

8 years agoMerge "mw.Title: Handle empty this.title"
jenkins-bot [Wed, 1 Jul 2015 19:24:21 +0000 (19:24 +0000)]
Merge "mw.Title: Handle empty this.title"

8 years agomw.Title: Handle empty this.title
Alex Monk [Wed, 1 Jul 2015 15:40:22 +0000 (16:40 +0100)]
mw.Title: Handle empty this.title

Otherwise we break code like this:
mw.Title.newFromText( '.foo' ).getPrefixedText()
because this.title[0] won't be set and you can't uppercase it

Bug: T104377
Change-Id: I1dae1e63e474757da725f76bced442ebd5b76c25