lhc/web/wiklou.git
6 years agoMerge "Add 3D filetype for STL files"
jenkins-bot [Thu, 22 Jun 2017 16:49:40 +0000 (16:49 +0000)]
Merge "Add 3D filetype for STL files"

6 years agoMerge "Remove execute bits from non-executable files"
jenkins-bot [Thu, 22 Jun 2017 16:08:27 +0000 (16:08 +0000)]
Merge "Remove execute bits from non-executable files"

6 years agoRemove execute bits from non-executable files
Brad Jorsch [Thu, 22 Jun 2017 15:27:23 +0000 (11:27 -0400)]
Remove execute bits from non-executable files

Change-Id: I4d6a202c63bef3e52b67b55fb6daef04dc2fdd62

6 years agoCollationFa: Avoid PHP 7 Unicode escape syntax
Bartosz Dziewoński [Thu, 22 Jun 2017 14:22:49 +0000 (16:22 +0200)]
CollationFa: Avoid PHP 7 Unicode escape syntax

We still support PHP 5.5.

Change-Id: I587cb794cded95afe7ad493614a6090a108efe6c

6 years agoMerge "Ability to create tests with nested modules"
jenkins-bot [Thu, 22 Jun 2017 14:11:21 +0000 (14:11 +0000)]
Merge "Ability to create tests with nested modules"

6 years agoMerge "RC Filters: Fix tags for integrated filters"
jenkins-bot [Thu, 22 Jun 2017 00:48:38 +0000 (00:48 +0000)]
Merge "RC Filters: Fix tags for integrated filters"

6 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 21 Jun 2017 20:07:34 +0000 (22:07 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: If8ff147d26d1ccf1d4c540ee7bc25cabead1da5a

6 years agoMerge "resourceloader: Add unit tests for ResourceLoader::isFileModule"
jenkins-bot [Wed, 21 Jun 2017 20:01:47 +0000 (20:01 +0000)]
Merge "resourceloader: Add unit tests for ResourceLoader::isFileModule"

6 years agoMerge "Allow $wgResourceModuleSkinStyles for any ResourceLoaderFileModule subclass"
jenkins-bot [Wed, 21 Jun 2017 19:53:24 +0000 (19:53 +0000)]
Merge "Allow $wgResourceModuleSkinStyles for any ResourceLoaderFileModule subclass"

6 years agoresourceloader: Add unit tests for ResourceLoader::isFileModule
Timo Tijhof [Wed, 21 Jun 2017 19:37:44 +0000 (20:37 +0100)]
resourceloader: Add unit tests for ResourceLoader::isFileModule

Change-Id: Ic21ae9e9cc418868ad7b93fe65bd09495f38d1b2

6 years agoMerge "Make MalformedTitleException errorMessage non-null"
jenkins-bot [Wed, 21 Jun 2017 19:42:51 +0000 (19:42 +0000)]
Merge "Make MalformedTitleException errorMessage non-null"

6 years agoMerge "Fix enhanced RC data attribute sanitizing"
jenkins-bot [Wed, 21 Jun 2017 19:38:48 +0000 (19:38 +0000)]
Merge "Fix enhanced RC data attribute sanitizing"

6 years agoAllow $wgResourceModuleSkinStyles for any ResourceLoaderFileModule subclass
Bartosz Dziewoński [Mon, 5 Jun 2017 23:04:19 +0000 (01:04 +0200)]
Allow $wgResourceModuleSkinStyles for any ResourceLoaderFileModule subclass

All ResourceLoaderFileModule subclasses are now required to support
the 'skinStyles' property in their module definition, and ideally
make use of it (but at least they must not fail violently).

Follow-up to 51eede02837a3a9d378cb35fa7c27a9f4e8e5f4e.

Bug: T167478
Bug: T168088
Change-Id: I35a12a451bf2695818702df1bbd1708173a3f9ce

6 years agoMerge "Factor out new qualifiedTableComponents() Database method"
jenkins-bot [Wed, 21 Jun 2017 18:36:42 +0000 (18:36 +0000)]
Merge "Factor out new qualifiedTableComponents() Database method"

6 years agoMerge "Load mediawiki.action.edit.styles on mobile"
jenkins-bot [Wed, 21 Jun 2017 17:07:02 +0000 (17:07 +0000)]
Merge "Load mediawiki.action.edit.styles on mobile"

6 years agoMake MalformedTitleException errorMessage non-null
Lucas Werkmeister [Tue, 20 Jun 2017 18:26:04 +0000 (20:26 +0200)]
Make MalformedTitleException errorMessage non-null

A null $errorMessage constructor argument has not been supported since
I43d988602b, since wfMessage (via the Message constructor) throws an
exception if the message key is null. It follows that getErrorMessage()
can never return null.

Bug: T99818
Change-Id: I2cbf4909e7237b0a91d100cc5478fb4cfee1d748

6 years agoRC Filters: Fix tags for integrated filters
Matthew Flaschen [Wed, 21 Jun 2017 07:15:48 +0000 (03:15 -0400)]
RC Filters: Fix tags for integrated filters

Change-Id: Ibf06ffe9338b12951caa7259304594d4fcc928d5

6 years agoFactor out new qualifiedTableComponents() Database method
Aaron Schulz [Tue, 20 Jun 2017 23:29:56 +0000 (16:29 -0700)]
Factor out new qualifiedTableComponents() Database method

Change-Id: Ib453a5a8e0cf8bb1b77e65eb6f9569819d4eb5b2

6 years agoLoad mediawiki.action.edit.styles on mobile
jdlrobson [Tue, 20 Jun 2017 21:28:35 +0000 (14:28 -0700)]
Load mediawiki.action.edit.styles on mobile

Hopefully uncontroversial.
Mobile non-js editing is currently feature flagged
by $wgMFAllowNonJavaScriptEditing so this shouldn't have
any impact on production but will ensure the editor gets
styled consistently with future changes here.

Change-Id: If8994370e9ec7fc424ce7cb22df922d029cfc035

6 years agoMerge "Replace Linker::link() with LinkRenderer in special pages"
jenkins-bot [Tue, 20 Jun 2017 21:07:22 +0000 (21:07 +0000)]
Merge "Replace Linker::link() with LinkRenderer in special pages"

6 years agoMerge "Replace a Linker::link() call in InfoAction.php"
jenkins-bot [Tue, 20 Jun 2017 21:05:15 +0000 (21:05 +0000)]
Merge "Replace a Linker::link() call in InfoAction.php"

6 years agoMerge "ApiSandbox: Indicate when login is suppressed"
jenkins-bot [Tue, 20 Jun 2017 21:02:30 +0000 (21:02 +0000)]
Merge "ApiSandbox: Indicate when login is suppressed"

6 years agoMerge "API: Add the ability to flag parameter values as deprecated"
jenkins-bot [Tue, 20 Jun 2017 20:59:17 +0000 (20:59 +0000)]
Merge "API: Add the ability to flag parameter values as deprecated"

6 years agoReplace Linker::link() with LinkRenderer in special pages
Matěj Suchánek [Thu, 23 Mar 2017 18:09:41 +0000 (18:09 +0000)]
Replace Linker::link() with LinkRenderer in special pages

Bug: T149346
Change-Id: I2735750803dc1b2e36be3989caaabbf3232b2923

6 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Tue, 20 Jun 2017 20:06:45 +0000 (22:06 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I1d2050c1a5d2cadf8f8e152037f7b80530612dcd

6 years agoApiSandbox: Indicate when login is suppressed
Brad Jorsch [Sat, 20 May 2017 09:40:17 +0000 (11:40 +0200)]
ApiSandbox: Indicate when login is suppressed

ApiMain will add a header to indicate that lacksSameOriginSecurity()
forced the request to be processed as if logged out, and ApiSandbox will
detect this header to display a helpful message on the results page.

Bug: T165797
Change-Id: I56390b31563c75d83cf0a8ffb1b8e4f3283895f0

6 years agoAPI: Add the ability to flag parameter values as deprecated
Brad Jorsch [Thu, 25 May 2017 20:07:25 +0000 (16:07 -0400)]
API: Add the ability to flag parameter values as deprecated

This has a number of implications:
* A deprecation warning is automatically generated if the value is used.
* action=paraminfo can list it in a machine-readable manner.
* It is automatically flagged in the help when message-per-value mode is
  used.
* In values lists in the help, it's specially marked (currently
  strike-through).
* ApiSandbox will mark it in the widgets (currently strike-through).

Deprecation of submodules is not automatically detected here, that's
left for a later patch.

Bug: T123931
Change-Id: Idad6377063e457f9352a99df5c7cc15b1563579e

6 years agoMerge "API: Split description messages into summary + additional text"
jenkins-bot [Tue, 20 Jun 2017 15:34:10 +0000 (15:34 +0000)]
Merge "API: Split description messages into summary + additional text"

6 years agoMerge "mw.action.edit: Restore modifier keys for accesskey in tooltip for summary...
jenkins-bot [Tue, 20 Jun 2017 15:32:27 +0000 (15:32 +0000)]
Merge "mw.action.edit: Restore modifier keys for accesskey in tooltip for summary field"

6 years agoMerge "mw.action.edit: Fix byte limit for the edit summary field"
jenkins-bot [Mon, 19 Jun 2017 22:01:42 +0000 (22:01 +0000)]
Merge "mw.action.edit: Fix byte limit for the edit summary field"

6 years agomw.action.edit: Restore modifier keys for accesskey in tooltip for summary field
Bartosz Dziewoński [Mon, 19 Jun 2017 19:50:59 +0000 (21:50 +0200)]
mw.action.edit: Restore modifier keys for accesskey in tooltip for summary field

.updateTooltipAccessKeys() is called automatically after the page
loads (from mediawiki.page.ready), but infusing the field blows away
these changes.

This is a poor workaround, the same issue will appear if e.g. the
buttons are infused. The functionality provided by jquery.accessKeyLabel
should be an OOjs UI feature, or we should somehow call it automatically
after infusing widgets.

Bug: T168042
Change-Id: I2b166be34b8394c296fbc7326570cd732284888f

6 years agomw.action.edit: Fix byte limit for the edit summary field
Bartosz Dziewoński [Mon, 19 Jun 2017 19:40:27 +0000 (21:40 +0200)]
mw.action.edit: Fix byte limit for the edit summary field

In OOUI mode, the `.byteLimit( 255 )` call must be after
the edit summary widget is infused. Otherwise, infusing
"reverts" the 'maxlength' attribute of the input field
back to the original value of 200, as set by the PHP code.
(The byte limit was still applied, but in most cases the
'maxlength' applied first.)

Bug: T168194
Change-Id: If0117a7af5bb6975c8355b42fdbc8501c6a02919

6 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Mon, 19 Jun 2017 20:06:49 +0000 (22:06 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ic1bbc174355e07f099f0e2e0b501f5315b9de4d2

6 years agoMerge "Add a message to localize strings like "2×" and use it in enhanced RC"
jenkins-bot [Mon, 19 Jun 2017 18:50:35 +0000 (18:50 +0000)]
Merge "Add a message to localize strings like "2×" and use it in enhanced RC"

6 years agoMerge "Remove "@author Umherirrender" annotations"
jenkins-bot [Mon, 19 Jun 2017 09:28:20 +0000 (09:28 +0000)]
Merge "Remove "@author Umherirrender" annotations"

6 years agoMerge "Add missing dependencies to module 'mediawiki.api'"
jenkins-bot [Mon, 19 Jun 2017 08:37:55 +0000 (08:37 +0000)]
Merge "Add missing dependencies to module 'mediawiki.api'"

6 years agoMerge "API: Have generator=random set a non-continuation value"
jenkins-bot [Mon, 19 Jun 2017 07:07:55 +0000 (07:07 +0000)]
Merge "API: Have generator=random set a non-continuation value"

6 years agoMerge "API: Deprecate diff and parse parameters in ApiQueryRevisionsBase"
jenkins-bot [Mon, 19 Jun 2017 07:00:52 +0000 (07:00 +0000)]
Merge "API: Deprecate diff and parse parameters in ApiQueryRevisionsBase"

6 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sun, 18 Jun 2017 19:56:20 +0000 (21:56 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ibbb3740e051fd168201f4664cd57417ea70716da

6 years agoMerge "Improve documentation for wfParseUrl"
jenkins-bot [Sun, 18 Jun 2017 19:18:39 +0000 (19:18 +0000)]
Merge "Improve documentation for wfParseUrl"

6 years agoImprove documentation for wfParseUrl
Gergő Tisza [Sun, 18 Jun 2017 10:30:47 +0000 (12:30 +0200)]
Improve documentation for wfParseUrl

Change-Id: I84ef76d2e3b026ed38e02a82245b559324950ede

6 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sat, 17 Jun 2017 19:54:33 +0000 (21:54 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I90ecf094ef908fc82a2cb1442fd7aa72405950f9

6 years agoReplace a Linker::link() call in InfoAction.php
Matěj Suchánek [Sat, 17 Jun 2017 19:37:04 +0000 (21:37 +0200)]
Replace a Linker::link() call in InfoAction.php

Bug: T149346
Change-Id: I41906d4d24468467e1c0740d748fe96ea2dab484

6 years agoMerge "build: Remove Travis CI allow_failure for Postgres"
jenkins-bot [Fri, 16 Jun 2017 22:20:49 +0000 (22:20 +0000)]
Merge "build: Remove Travis CI allow_failure for Postgres"

6 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 16 Jun 2017 20:02:53 +0000 (22:02 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Ib20d54b3faab8a606f60a8e1e03d74e826ef385e

6 years agoMerge "adding data-attribute to sister-search sidebar results."
jenkins-bot [Fri, 16 Jun 2017 19:39:36 +0000 (19:39 +0000)]
Merge "adding data-attribute to sister-search sidebar results."

6 years agoMerge "Hide Pig Latin language entirely if $wgUsePigLatinVariant is false"
jenkins-bot [Fri, 16 Jun 2017 19:12:01 +0000 (19:12 +0000)]
Merge "Hide Pig Latin language entirely if $wgUsePigLatinVariant is false"

6 years agoadding data-attribute to sister-search sidebar results.
Jan Drewniak [Fri, 16 Jun 2017 19:04:01 +0000 (21:04 +0200)]
adding data-attribute to sister-search sidebar results.

Adding source identifier (iwprefix) data-attribute
to interwiki search sidebar results.

Change-Id: I9e11a368fe4f5d79d81503fb4db1cc1649723839

6 years agoHide Pig Latin language entirely if $wgUsePigLatinVariant is false
Bartosz Dziewoński [Fri, 16 Jun 2017 18:43:28 +0000 (20:43 +0200)]
Hide Pig Latin language entirely if $wgUsePigLatinVariant is false

Previously, even if $wgUsePigLatinVariant was false, the language
would show up on Special:Preferences (and some other places) as
'en-x-piglatin - Igpay Atinlay'.

Follow-up to d8375bee241b4d134aff901c7d072aa1374c860b.

Change-Id: I08faacabca87c04299c7b535be8df1770e0a37ac

6 years agoAPI: Deprecate diff and parse parameters in ApiQueryRevisionsBase
Brad Jorsch [Fri, 28 Apr 2017 19:38:24 +0000 (15:38 -0400)]
API: Deprecate diff and parse parameters in ApiQueryRevisionsBase

The 'rvdifftotext', 'rvdifftotextpst', 'rvdiffto', 'rvexpandtemplates',
'rvgeneratexml', 'rvparse', and 'rvprop=parsetree' parameters to
prop=revisions are deprecated, as are the similarly named parameters to
prop=deletedrevisions, list=allrevisions, and list=alldeletedrevisions.

Use action=compare, action=parse, or action=expandtemplates instead.

Bug: T164106
Change-Id: I6deaf550a4b96f0d35488bea7bfd6637d6d1c36a

6 years agoMerge "Fix call to makeContent in SpecialChangeContentModel"
jenkins-bot [Fri, 16 Jun 2017 14:37:49 +0000 (14:37 +0000)]
Merge "Fix call to makeContent in SpecialChangeContentModel"

6 years agoMerge "Add namespace names for Atikamekw (atj)"
jenkins-bot [Fri, 16 Jun 2017 10:47:03 +0000 (10:47 +0000)]
Merge "Add namespace names for Atikamekw (atj)"

6 years agoMerge "RCFilters: Always replaceState the URL"
jenkins-bot [Thu, 15 Jun 2017 21:27:06 +0000 (21:27 +0000)]
Merge "RCFilters: Always replaceState the URL"

6 years agoMerge "Make DatabasePostgres::serverIsReadOnly() check default_transaction_read_only"
jenkins-bot [Thu, 15 Jun 2017 21:04:22 +0000 (21:04 +0000)]
Merge "Make DatabasePostgres::serverIsReadOnly() check default_transaction_read_only"

6 years agoAdd namespace names for Atikamekw (atj)
Amire80 [Thu, 15 Jun 2017 20:55:13 +0000 (23:55 +0300)]
Add namespace names for Atikamekw (atj)

Bug: T167714
Change-Id: I5e98c80a8365707d73ed7e259466ab57cca7261b

6 years agobuild: Remove Travis CI allow_failure for Postgres
Timo Tijhof [Thu, 15 Jun 2017 20:31:14 +0000 (21:31 +0100)]
build: Remove Travis CI allow_failure for Postgres

Now passing!

Follows-up 7399a3ec01.

Bug: T75174
Change-Id: I9cdd0aefa955f2bd91945969f6066ab67cda0d5f

6 years agomediawiki.storage: Document 'null' return from get()
Timo Tijhof [Thu, 15 Jun 2017 20:25:45 +0000 (21:25 +0100)]
mediawiki.storage: Document 'null' return from get()

Follows-up 7daab75414d. Forgot to document the full return scope
of HTML Storage#get, which is 'string or null'.

We may want to consider changing the 'false' return to 'null', so
that the concept of "localStorage disabled" is entirely hidden
behind the regular return values (null in case of #get).

Change-Id: I6bed62457d2e64831ec8241e16f7e8c85c6531a4

6 years agoMerge "Localisation updates from https://translatewiki.net."
L10n-bot [Thu, 15 Jun 2017 19:58:25 +0000 (19:58 +0000)]
Merge "Localisation updates from https://translatewiki.net."

6 years agoMerge "RCFilters: Add edit tags drop down"
jenkins-bot [Thu, 15 Jun 2017 19:58:10 +0000 (19:58 +0000)]
Merge "RCFilters: Add edit tags drop down"

6 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Thu, 15 Jun 2017 19:58:08 +0000 (21:58 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: If38ca86942d9591ab9f86f8584de5ad0d136a27f

6 years agoRCFilters: Add edit tags drop down
Moriel Schottlender [Mon, 29 May 2017 15:04:35 +0000 (18:04 +0300)]
RCFilters: Add edit tags drop down

Fetches the tags from the wiki and displays them as additional
filters for RCFilters.

Bug: T159942
Bug: T161650
Bug: T164130
Change-Id: I7bfa99cd5aeb34b6c7de74c15aac158ee40eac2f

6 years agoMerge "Set flush mode in DatabasePostgres::reportQueryError()"
jenkins-bot [Thu, 15 Jun 2017 18:14:02 +0000 (18:14 +0000)]
Merge "Set flush mode in DatabasePostgres::reportQueryError()"

6 years agoAPI: Split description messages into summary + additional text
Brad Jorsch [Fri, 26 May 2017 17:50:06 +0000 (13:50 -0400)]
API: Split description messages into summary + additional text

To fix T123930, it would be very handy to have the summary for each
module without any of the additional explanatory text.

Bug: T166411
Change-Id: I778bab2b87971875aed4c804341ad59c1c6e021f

6 years agoMerge "Add media type based filtering to Special:NewFiles"
jenkins-bot [Thu, 15 Jun 2017 17:28:35 +0000 (17:28 +0000)]
Merge "Add media type based filtering to Special:NewFiles"

6 years agoMerge "Allow filtering on newbies in Special:NewFiles"
jenkins-bot [Thu, 15 Jun 2017 17:25:41 +0000 (17:25 +0000)]
Merge "Allow filtering on newbies in Special:NewFiles"

6 years agoMerge "Show dimensions in TraditionalImageGallery"
jenkins-bot [Thu, 15 Jun 2017 17:16:13 +0000 (17:16 +0000)]
Merge "Show dimensions in TraditionalImageGallery"

6 years agoMerge "Add | to error message about invalid change tag characters"
jenkins-bot [Thu, 15 Jun 2017 16:22:37 +0000 (16:22 +0000)]
Merge "Add | to error message about invalid change tag characters"

6 years agoFix call to makeContent in SpecialChangeContentModel
daniel [Thu, 15 Jun 2017 15:56:10 +0000 (17:56 +0200)]
Fix call to makeContent in SpecialChangeContentModel

ContentHandler::makeContent expects serialized content as the first
parameter, not native data.

Change-Id: Ibf1825a191d10b4dd8b9a5cee95b02b2b91f3d92

6 years agoAdd missing dependencies to module 'mediawiki.api'
Fomafix [Thu, 15 Jun 2017 13:52:55 +0000 (15:52 +0200)]
Add missing dependencies to module 'mediawiki.api'

Change-Id: I62f6e75d840d07a4ae6676fa88c6b655aa575bba

6 years agoMake DatabasePostgres::serverIsReadOnly() check default_transaction_read_only
Aaron Schulz [Thu, 15 Jun 2017 08:36:39 +0000 (01:36 -0700)]
Make DatabasePostgres::serverIsReadOnly() check default_transaction_read_only

Change-Id: If6088c15271a827fedc6a585e070bab6c1acc371

6 years agoSet flush mode in DatabasePostgres::reportQueryError()
Aaron Schulz [Thu, 15 Jun 2017 08:25:17 +0000 (01:25 -0700)]
Set flush mode in DatabasePostgres::reportQueryError()

Bug: T167927
Change-Id: Ib02608cf33d369939a9e587cebfc736336a1e979

6 years agoFix typo "developement" in MockFSFile comment
Federico Leva [Wed, 14 Jun 2017 09:07:48 +0000 (11:07 +0200)]
Fix typo "developement" in MockFSFile comment

Change-Id: If5beaff9bceea44a7e2d4d893b82a294e61afc84

6 years agoMerge "objectcache: Forward MultiWriteBagOStuff::makeKey to primary backend"
jenkins-bot [Thu, 15 Jun 2017 02:45:08 +0000 (02:45 +0000)]
Merge "objectcache: Forward MultiWriteBagOStuff::makeKey to primary backend"

6 years agoAdd | to error message about invalid change tag characters
Matthew Flaschen [Thu, 15 Jun 2017 00:38:48 +0000 (20:38 -0400)]
Add | to error message about invalid change tag characters

Pipe itself is already not allowed.

Bug: T92956
Change-Id: Icb98b5e8040fa91685adcdfdb46e1173162f2b9e

6 years agoFix enhanced RC data attribute sanitizing
Gergő Tisza [Wed, 14 Jun 2017 21:01:31 +0000 (23:01 +0200)]
Fix enhanced RC data attribute sanitizing

We push 'class' in the attribute array so the hook
can manipulate it, so it needs to be added to the attribute
whitelist as well.

Broken in I6dd006d0b1b0fd35c0020f0f9eea9113eca30b35.

Bug: T167922
Bug: T167535
Change-Id: Ic24400382a9dcbb990e12dfddae4ab7db14553cc

6 years agoMerge "New language variant 'en-x-piglatin' for easier variant testing"
jenkins-bot [Wed, 14 Jun 2017 23:57:13 +0000 (23:57 +0000)]
Merge "New language variant 'en-x-piglatin' for easier variant testing"

6 years agoMerge "RCFilters: Add 'views' concept and a namespace view to RCFilters"
jenkins-bot [Wed, 14 Jun 2017 22:51:46 +0000 (22:51 +0000)]
Merge "RCFilters: Add 'views' concept and a namespace view to RCFilters"

6 years agoMerge "Replace deprecated $wgDummyLanguageCodes in WebInstallerLanguage.php"
jenkins-bot [Wed, 14 Jun 2017 21:18:44 +0000 (21:18 +0000)]
Merge "Replace deprecated $wgDummyLanguageCodes in WebInstallerLanguage.php"

6 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Wed, 14 Jun 2017 20:42:42 +0000 (22:42 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: I6dd2ce2c8fab01838c84bc016d04192e397fb3c9

6 years agoMerge "Use strtr() for clarity"
jenkins-bot [Wed, 14 Jun 2017 20:18:58 +0000 (20:18 +0000)]
Merge "Use strtr() for clarity"

6 years agoRCFilters: Always replaceState the URL
Moriel Schottlender [Wed, 14 Jun 2017 20:04:01 +0000 (13:04 -0700)]
RCFilters: Always replaceState the URL

Allow users to hit 'back' button to actually go back to their
previous page, rather than use 'back' button to undo their filter
toggling before they're allowed to go back to their previous
page.

Bug: T167919
Change-Id: I171799bd5c139addebcccc4799003f040c3f119b

6 years agoUse strtr() for clarity
Max Semenik [Tue, 13 Jun 2017 00:01:38 +0000 (17:01 -0700)]
Use strtr() for clarity

Change-Id: I35e7530c13fee028ea95a56df1bd2714a610db6e

6 years agoRCFilters: Add 'views' concept and a namespace view to RCFilters
Moriel Schottlender [Thu, 11 May 2017 00:28:26 +0000 (17:28 -0700)]
RCFilters: Add 'views' concept and a namespace view to RCFilters

Enhanced RCFilters: Add the ability to filter by namespaces to RCFilters.
🎉 🎁 🎊

- Add the ability to separate groups of filters by 'views'
- Add the first views as 'default' (for predefined filters)
  and 'namespace' as the list of namespaces.
- Add 'nsinvert' to namespace group
- Allow highlighting namespaces
- Allow searching on either view, depending on prefix
- Add a way to switch views by typing prefix, clicking the
  'Namespaces' button or clicking a tag (either namespace
  or filter tag, changes the view accordingly, and adds
  or removes the prefix from the input to stay consistent)
- Add an optional wrapper text for tags, so we can represent
  them with their respective prefixes and (if needed) with
  a special message for inverted state.
- Add unit tests and make pass
- Bonus: Fix issue with URL not updating (and not being updated)
  the inverted and highlight enabled states.

Bug: T159942
Bug: T163521
Bug: T164130
Change-Id: I7e83f0800cbeb289dfd3461c1c5a197c053147ca

6 years agoMerge "RCFilters: Make frontend URL follow backend rules and add 'urlversion=2'"
jenkins-bot [Wed, 14 Jun 2017 19:31:15 +0000 (19:31 +0000)]
Merge "RCFilters: Make frontend URL follow backend rules and add 'urlversion=2'"

6 years agoMerge "ChangesListSpecialPage: Add urlversion and make urlversion=2 ignore defaults"
jenkins-bot [Wed, 14 Jun 2017 19:30:48 +0000 (19:30 +0000)]
Merge "ChangesListSpecialPage: Add urlversion and make urlversion=2 ignore defaults"

6 years agoMerge "Require $key in msg() functions"
jenkins-bot [Wed, 14 Jun 2017 18:07:08 +0000 (18:07 +0000)]
Merge "Require $key in msg() functions"

6 years agoMerge "Introduce MessageLocalizer interface for exposing msg() method"
jenkins-bot [Wed, 14 Jun 2017 18:01:50 +0000 (18:01 +0000)]
Merge "Introduce MessageLocalizer interface for exposing msg() method"

6 years agoRCFilters: Make frontend URL follow backend rules and add 'urlversion=2'
Moriel Schottlender [Sun, 4 Jun 2017 08:13:47 +0000 (11:13 +0300)]
RCFilters: Make frontend URL follow backend rules and add 'urlversion=2'

The backend always merges the query with wiki/user defaults before
it gives us data. The frontend, though, initially assumed that the
state is given strictly by the URL parameters (especially after the
URL shorening commit). This made it so that the frontend state is
incompatible with backend state.

However, always merging frontend state with user/wiki defaults can
produce inconsistencies between URLs in the same wiki, preventing
users from sharing them -- and making it potentially break if ever
a wiki default changes.

The solution is to add 'urlversion=2' to all RCFilters-generated
URLs and have the backend recognize this parameter as 'do not
merge with defaults'.

When RCFilters frontend loads, it checks whether the parameter
exists; if it doesn't, it merges whatever it sees with the defaults
just like the backend, then it transforms the URL to represent the
correct full state, and adds 'urlversion=2' to the URL parameters,
making it consistent across accounts and through time for the
next time it will load.

This means several new behaviors over the 'short url' commit:
- Accessing Special:RecentChanges directly (no query) will result
  in one of two things:
  -- If there is a saved query that's set to default:
     The system will load that saved query "straight forward" (as
     if the user clicked that option from the menu) causing, also,
     an ajax re-request from the server (since the server does not
     yet know about saved queries or their potential for being
     the default state.)
  -- If there is no saved query default: The system will load
     user/wiki defaults (like the backend does) and then fix the
     url to represent this state fully (with parameters showing the
     actual state of the filters.
  -- Both cases will also result in adding 'urlversion=2' to
     the end result URL.
- Accessing Special:RecentChanges?urlversion=2 (without any other
  parameters) will result in loading a completely empty filter set
  in RCFilters. We assume that 'urlversion=2' does not load defaults
  even if it is the only parameter in the URL.
- Accessing Special:RecentChanges?hideX=1 (parameter set without
  urlversion=2) will result in the front end taking the requested
  parameters, merging them with user/wiki default (reproducing what
  the backend does) and then adding urlversion=2 to the URL.

In all cases except for the default-saved-query-load case, the initial
load will **not** re-request data from the backend. The backend needs
to adjust to respect urlversion=2 as well (will come in an upcoming
commit) so the state and expectation of both the front- and back-end
are the same.

This commit also factors out URL handing to a separate class (UriProcessor)
and adds unit tests for it.

Bug: T166907
Bug: T166972
Bug: T166974
Change-Id: I0eed3bc0d4fa4810b6301b535c75b6bfbc8b4a5b

6 years agoobjectcache: Forward MultiWriteBagOStuff::makeKey to primary backend
Timo Tijhof [Wed, 14 Jun 2017 17:06:46 +0000 (18:06 +0100)]
objectcache: Forward MultiWriteBagOStuff::makeKey to primary backend

Similar to what WANObjectCache and CachedBagOStuff are already doing.

Also add missing tests for WANObjectCache (similar to those for CachedBagOStuff).

Bug: T167465
Change-Id: I1a0c9324726aa6a1b221def985773b1b819181fd

6 years agoParserCache: Delete old-style key when saving
Brad Jorsch [Sun, 11 Jun 2017 15:21:21 +0000 (11:21 -0400)]
ParserCache: Delete old-style key when saving

It was noticed that disk usage on the parser cache machines was
increasing since shortly after wmf.4 was redeployed everywhere on the
9th. One theory is that I7fb9ffca9 causes this by making reparses for an
existing old-style cache entry start writing the new-style key where
they would previously have overwritten the old-style key. On that
theory, let's delete that old-style key (that should now be useless) on
save.

I'm assuming here that firing a blind delete for keys that probably
don't exist in the cache (i.e. every new edit) isn't going to hurt
anything. If that's not the case, we'd need to check existence before
deleting.

Bug: T167784
Change-Id: Ie5efb05722cb7da2a90da195a1f244468177175d

6 years agoMerge "Linked HTML representation of a format to formatted output"
jenkins-bot [Wed, 14 Jun 2017 13:39:23 +0000 (13:39 +0000)]
Merge "Linked HTML representation of a format to formatted output"

6 years agoLinked HTML representation of a format to formatted output
KeerthanaS [Mon, 25 Jan 2016 21:25:57 +0000 (02:55 +0530)]
Linked HTML representation of a format to formatted output

Added Hyperlink to non-HTML formatted output from the HTML
representation of the output

Bug: T123905
Change-Id: Id55c524a29f679b8e06d4e3d05bd50e8685fb830

6 years agoRequire $key in msg() functions
Amir Sarabadani [Mon, 12 Jun 2017 09:53:51 +0000 (14:23 +0430)]
Require $key in msg() functions

Note: calling msg() with no parameter was never supported,
doing this on a RequestContext for example would result in:
PHP Warning:  Missing argument 1 for wfMessage() ...followed
by a bunch of fallout.

So this patch only formally declares what was already a
requirement in reality.

Change-Id: I1864afb8bcc641698689828914949a06506d8f3a

6 years agoMerge "Fix Postgres support"
jenkins-bot [Wed, 14 Jun 2017 08:19:53 +0000 (08:19 +0000)]
Merge "Fix Postgres support"

6 years agoMerge "Skin: Don't use parser cache in getCachedNotice()"
jenkins-bot [Wed, 14 Jun 2017 05:25:15 +0000 (05:25 +0000)]
Merge "Skin: Don't use parser cache in getCachedNotice()"

6 years agoSkin: Don't use parser cache in getCachedNotice()
Kunal Mehta [Sun, 11 Jun 2017 01:15:35 +0000 (18:15 -0700)]
Skin: Don't use parser cache in getCachedNotice()

Just use wfGetCache( CACHE_ANYTHING ) which should be sufficient for
most cases.

Change-Id: Ic97549c9649d0cc1938773b10e26f6e8f819c7fa

6 years agoDB: Add join conditions to selectField, selectFieldValues, and insertSelect
Brad Jorsch [Fri, 9 Jun 2017 16:58:09 +0000 (12:58 -0400)]
DB: Add join conditions to selectField, selectFieldValues, and insertSelect

selectField() and selectFieldValues() are trivial, they just need to
pass it through to select(). In fact, selectFieldValues() was already
doing it, just no one ever updated IDatabase.

insertSelect() is a little more work. nativeInsertSelect() was
originally written as largely a copy-paste of select() and has since
gotten well out of sync. Now that we have selectSQLText(), we should be
able to just use that. DatabasePostgres's implementation can wrap the
parent implementation instead of being another copy-paste, but
DatabaseOracle seems to still need to be special.

Change-Id: I0e6a9e6daa510639d3212641606047a5db96c500

6 years agoParserOptions: Fix handling of 'editsection'
Brad Jorsch [Sun, 11 Jun 2017 14:49:32 +0000 (10:49 -0400)]
ParserOptions: Fix handling of 'editsection'

The handling of the 'editsection' option prior to I7fb9ffca9 was
unusual: it was included in the cache key, but the getter didn't ever
flag it as "used". This was overlooked in I7fb9ffca9.

This fixes the handling to restore that behavior. It's no longer
considered to be a real parser option, so changing it won't make
isSafeToCache() fail while reading it won't flag it as 'used'.

But to keep Wikibase working (see T85252), if 'editsection' is supplied
in $forOptions optionsHash() will still include it in the hash so
whatever Wikibase is doing by forcing that doesn't break. The hash when
it is included is the same as was used in I7fb9ffca9 to reuse keys.

Once optionsHashPre30() is removed, Wikibase should be changed to use
some other method to fix T85252 so we can remove that hack from
optionsHash().

Change-Id: I77b5519c5a1122a1fafbfc523b77b2268c0efeb1

6 years agoMake Titles with an unknown namespace ID refer to Special:Badtitle.
daniel [Fri, 9 Jun 2017 16:39:33 +0000 (18:39 +0200)]
Make Titles with an unknown namespace ID refer to Special:Badtitle.

Without this patch, Title::getPrefixedText() would return ":Foo"
if the namespace was unknown, potentially creating a misleading
link to the main namespace. With this change, getPrefixedText()
will return something like "Special:Badtitle/NS12345:Foo".

Note that round trip behavior is broken either way.

Bug: T165149
Change-Id: I0d491a2b58ff45f207f83ee62ca6e7e6ffbf790a

6 years agoMerge "Hide <style> tags from Tidy"
jenkins-bot [Wed, 14 Jun 2017 04:23:07 +0000 (04:23 +0000)]
Merge "Hide <style> tags from Tidy"