4 years agoSplit DairikiDiff to class per file
Reedy [Sun, 14 Apr 2019 22:13:01 +0000 (23:13 +0100)]
Split DairikiDiff to class per file

Change-Id: Ica426312ec69707b9a99dfe2a7deee945c38ba35

4 years agoMerge "Split filebackend files to class per file"
jenkins-bot [Sun, 14 Apr 2019 22:24:56 +0000 (22:24 +0000)]
Merge "Split filebackend files to class per file"

4 years agoRename PhpBugTests -> PhpXMLBugTester
Reedy [Sun, 14 Apr 2019 21:10:40 +0000 (22:10 +0100)]
Rename PhpBugTests -> PhpXMLBugTester

Only contains one class (probably should be removed when we bump to PHP 7 fully)

Change-Id: Iab2bb837e2ed5d5556bd49f4236030b43aba29f1

4 years agoSplit filebackend files to class per file
Reedy [Sun, 14 Apr 2019 02:35:00 +0000 (03:35 +0100)]
Split filebackend files to class per file

Change-Id: Idf9f4177fb9a523ce41227bda2af923bf418396b

4 years agoMerge "Split HTMLFormElement.php into class per file"
jenkins-bot [Sun, 14 Apr 2019 21:59:45 +0000 (21:59 +0000)]
Merge "Split HTMLFormElement.php into class per file"

4 years agoMerge "Move ClassCollector to its own file"
jenkins-bot [Sun, 14 Apr 2019 21:54:10 +0000 (21:54 +0000)]
Merge "Move ClassCollector to its own file"

4 years agoMerge "Move SectionProfileCallback to its own file"
jenkins-bot [Sun, 14 Apr 2019 21:53:00 +0000 (21:53 +0000)]
Merge "Move SectionProfileCallback to its own file"

4 years agoMerge "DevelopmentSettings: Remove unused globals & declare $wgSQLMode"
jenkins-bot [Sun, 14 Apr 2019 21:40:23 +0000 (21:40 +0000)]
Merge "DevelopmentSettings: Remove unused globals & declare $wgSQLMode"

4 years agoMerge "Remove XMPReader back compat"
jenkins-bot [Sun, 14 Apr 2019 21:25:47 +0000 (21:25 +0000)]
Merge "Remove XMPReader back compat"

4 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Sun, 14 Apr 2019 20:01:17 +0000 (22:01 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: If213bbbe7552c4a6e747ca618ac0be22177d70b9

4 years agoMove ClassCollector to its own file
Reedy [Sun, 14 Apr 2019 15:04:32 +0000 (16:04 +0100)]
Move ClassCollector to its own file

Change-Id: I881f1ccc4aaf8babc40ad534a2a91f1ccf3baad4

4 years agoMove SectionProfileCallback to its own file
Reedy [Sun, 14 Apr 2019 15:02:53 +0000 (16:02 +0100)]
Move SectionProfileCallback to its own file

Change-Id: Iccb2048eed6631caa4f20639f55866e76f9fabf0

4 years agoMerge "Fix casing of Special Pages to match class name"
jenkins-bot [Sun, 14 Apr 2019 19:25:29 +0000 (19:25 +0000)]
Merge "Fix casing of Special Pages to match class name"

4 years agoMerge "Remove HWLDFWordAccumulator, deprecated in 1.28"
jenkins-bot [Sun, 14 Apr 2019 19:21:26 +0000 (19:21 +0000)]
Merge "Remove HWLDFWordAccumulator, deprecated in 1.28"

4 years agoMerge "Remove ObjectFactory"
jenkins-bot [Sun, 14 Apr 2019 19:21:21 +0000 (19:21 +0000)]
Merge "Remove ObjectFactory"

4 years agoRemove XMPReader back compat
Reedy [Sun, 14 Apr 2019 13:55:23 +0000 (14:55 +0100)]
Remove XMPReader back compat

Change-Id: I4e3ecbf6c13a7e7cfed88253eb6820e78e49e9c3

4 years agoSplit StubObject.php to have one class in one file
Zoranzoki21 [Sun, 14 Apr 2019 10:15:06 +0000 (12:15 +0200)]
Split StubObject.php to have one class in one file

Change-Id: If00625b700962a1c6d6412c6de30c28fa3df9f81

4 years agoRemove HWLDFWordAccumulator, deprecated in 1.28
Reedy [Sun, 14 Apr 2019 13:52:41 +0000 (14:52 +0100)]
Remove HWLDFWordAccumulator, deprecated in 1.28

Change-Id: I1eb6ba3c4b8b4cbabf26033a27728e42ebcddb23

4 years agoRemove ObjectFactory
Reedy [Sun, 14 Apr 2019 13:48:08 +0000 (14:48 +0100)]
Remove ObjectFactory

Change-Id: Ibfdb55101c893a6724e1f999eba85f2f8eabb79b

4 years agoFix casing of Special Pages to match class name
Reedy [Sun, 14 Apr 2019 12:32:59 +0000 (13:32 +0100)]
Fix casing of Special Pages to match class name

Change-Id: Ifc9e827202493e8f055a21875c54ff827a38d1f7

4 years agoSplit HTMLFormElement.php into class per file
Reedy [Sun, 14 Apr 2019 02:40:03 +0000 (03:40 +0100)]
Split HTMLFormElement.php into class per file

Change-Id: Ia8a35056fa6df5b81cda3e5bfcaac91d0b898d51

4 years agoSplit LocalFile.php to have one class in one file
Umherirrender [Sat, 6 Apr 2019 10:02:26 +0000 (12:02 +0200)]
Split LocalFile.php to have one class in one file

Change-Id: Ic8e5220f2a1832dfc39f00720001235429ed2cab

4 years agoMerge "resourceloader: Switch params for private addLink() function"
jenkins-bot [Sun, 14 Apr 2019 07:57:41 +0000 (07:57 +0000)]
Merge "resourceloader: Switch params for private addLink() function"

4 years agoMerge "Move UploadStashFile to its own file"
jenkins-bot [Sun, 14 Apr 2019 06:44:33 +0000 (06:44 +0000)]
Merge "Move UploadStashFile to its own file"

4 years agoMerge "Fix return type of UploadStashFile::remove()"
jenkins-bot [Sun, 14 Apr 2019 06:44:05 +0000 (06:44 +0000)]
Merge "Fix return type of UploadStashFile::remove()"

4 years agoMerge "title: Allow passing MessageLocalizer to newMainPage()"
jenkins-bot [Sun, 14 Apr 2019 02:52:22 +0000 (02:52 +0000)]
Merge "title: Allow passing MessageLocalizer to newMainPage()"

4 years agoMove UploadStashFile to its own file
Reedy [Sun, 14 Apr 2019 02:50:59 +0000 (03:50 +0100)]
Move UploadStashFile to its own file

Change-Id: I557bcd8369014bf2ea43c5eb8336562cb6295890

4 years agoFix return type of UploadStashFile::remove()
Reedy [Sun, 14 Apr 2019 02:48:43 +0000 (03:48 +0100)]
Fix return type of UploadStashFile::remove()

Change-Id: Ib9da5827671a34798b58f7d736e4b663ac2c442d

4 years agoMerge "Split logging classes to individual files"
jenkins-bot [Sun, 14 Apr 2019 02:26:45 +0000 (02:26 +0000)]
Merge "Split logging classes to individual files"

4 years agotitle: Allow passing MessageLocalizer to newMainPage()
Timo Tijhof [Sat, 13 Apr 2019 03:27:31 +0000 (04:27 +0100)]
title: Allow passing MessageLocalizer to newMainPage()

The method could not be used in session-less endpoints. This was
worked around once in the Startup module.

I plan to use this method in an extension module as well,
and would prefer not to duplicate core's logic for determining
the main page, outside this repository.

As general dependency-injection pattern, it seems desirable
to allow injecting a MessageLocalizer here.

Change-Id: I76cd02b2f489882e9404b93270f76aad9f0a4d9d

4 years agoMerge "Remove PreferencesFormLegacy.php"
jenkins-bot [Sun, 14 Apr 2019 02:22:08 +0000 (02:22 +0000)]
Merge "Remove PreferencesFormLegacy.php"

4 years agoMerge "Avoid extra parse/save delay for users with non-canonical parser options"
jenkins-bot [Sun, 14 Apr 2019 02:13:54 +0000 (02:13 +0000)]
Merge "Avoid extra parse/save delay for users with non-canonical parser options"

4 years agoSplit logging classes to individual files
Reedy [Sun, 14 Apr 2019 01:05:34 +0000 (02:05 +0100)]
Split logging classes to individual files

Change-Id: I3eaaf23612fe1aed65e49c06a9e5e565399af9ce

4 years agoRemove PreferencesFormLegacy.php
Reedy [Sun, 14 Apr 2019 01:24:20 +0000 (02:24 +0100)]
Remove PreferencesFormLegacy.php

Now unused, deprecated in 1.32

Change-Id: I4fc4bdf36b3832786c0266786cff57d512140d8e

4 years agoAvoid extra parse/save delay for users with non-canonical parser options
Aaron Schulz [Fri, 26 Oct 2018 22:42:26 +0000 (15:42 -0700)]
Avoid extra parse/save delay for users with non-canonical parser options

If {{REVISIONID}} results in a re-parse, that re-parse will be post-send
unless the user has canonical parser options and will need the output for
page views anyway (e.g. the refresh after editing).

Also make getPreparedEdit() allow lazy-loading of the parser output via
a callback. A magic __get() method handles objects created the new way
but accessed by other code the old way.

Bug: T216306
Change-Id: I2012437c45dd605a6c0868dea47cf43dc67061d8

4 years agoRemove unused constructor parameter and unused member variables
Reedy [Sun, 14 Apr 2019 01:36:34 +0000 (02:36 +0100)]
Remove unused constructor parameter and unused member variables

Make member variables private

Change-Id: Ie76f30a5c5731529256b2b160f6dde4d49646545

4 years agochanges: Remove unused code from ChangesFeed.php
Timo Tijhof [Sat, 13 Apr 2019 23:03:46 +0000 (00:03 +0100)]
changes: Remove unused code from ChangesFeed.php

This class is only constructed by ApiFeedRecentchanges, which
only calls either '$feed->getFeedObject' or '::buildItems',
neither of which call into the remaining methods on this class.

Appears to be a left over from an old refactor, perhaps from
when it was split out into FeedItem/ChannelFeed etc.

Change-Id: I89e13af992fd091d714d6f74735f03a5bfe9d238

4 years agoMerge "Replace PreferencesFormLegacy usages with PreferencesFormOOUI"
jenkins-bot [Sun, 14 Apr 2019 01:10:32 +0000 (01:10 +0000)]
Merge "Replace PreferencesFormLegacy usages with PreferencesFormOOUI"

4 years agoMerge "Remove LoginSignupSpecialPage.php from OneObjectStructurePerFile.MultipleFound"
jenkins-bot [Sun, 14 Apr 2019 01:10:26 +0000 (01:10 +0000)]
Merge "Remove LoginSignupSpecialPage.php from OneObjectStructurePerFile.MultipleFound"

4 years agoReplace PreferencesFormLegacy usages with PreferencesFormOOUI
Reedy [Sun, 14 Apr 2019 00:43:33 +0000 (01:43 +0100)]
Replace PreferencesFormLegacy usages with PreferencesFormOOUI

Change-Id: I4fc2a609ebb0f93b0767dddc343c3ff93ca8a39c

4 years agoRemove LoginSignupSpecialPage.php from OneObjectStructurePerFile.MultipleFound
Reedy [Sun, 14 Apr 2019 00:38:27 +0000 (01:38 +0100)]
Remove LoginSignupSpecialPage.php from OneObjectStructurePerFile.MultipleFound

Change-Id: I145759b29d9e845d175cc7ac43ad72248b258df0

4 years agoSplit SVGReader to its own file
Reedy [Sun, 14 Apr 2019 00:07:50 +0000 (01:07 +0100)]
Split SVGReader to its own file

Change-Id: I9fc442225a37c14d0606508aed5ef496a5ad82ba

4 years agoMerge "Split ApiImport.php to have one class in one file"
jenkins-bot [Sun, 14 Apr 2019 00:29:32 +0000 (00:29 +0000)]
Merge "Split ApiImport.php to have one class in one file"

4 years agoMerge "Remove PathRouter.php from Generic.Files.OneObjectStructurePerFile.MultipleFound"
jenkins-bot [Sun, 14 Apr 2019 00:20:32 +0000 (00:20 +0000)]
Merge "Remove PathRouter.php from Generic.Files.OneObjectStructurePerFile.MultipleFound"

4 years agoSplit ApiImport.php to have one class in one file
Zoranzoki21 [Sat, 6 Apr 2019 12:24:57 +0000 (14:24 +0200)]
Split ApiImport.php to have one class in one file

Change-Id: I3fbf5d271585722e95b7966ba62dd5e16fa3623f

4 years agoresourceloader: Switch params for private addLink() function
Timo Tijhof [Sat, 13 Apr 2019 23:43:18 +0000 (00:43 +0100)]
resourceloader: Switch params for private addLink() function

I don't recall how this awkward parameter order came about,
but it easy to change given it is a private function.

Switching the order makes it cleaner to then internally re-use
for mw.loader.load() which currently contains a duplicate version
of this logic.

Change-Id: Id686389991315c3d05222f8fd0b69f93f65e9924

4 years agoRemove PathRouter.php from Generic.Files.OneObjectStructurePerFile.MultipleFound
Reedy [Sun, 14 Apr 2019 00:01:52 +0000 (01:01 +0100)]
Remove PathRouter.php from Generic.Files.OneObjectStructurePerFile.MultipleFound

Change-Id: I9aa1eb7903dca3f63675c3be5a597829dc6d9ab3

4 years agoRemove ApiMessage from Generic.Files.OneObjectStructurePerFile.MultipleFound
Reedy [Sat, 13 Apr 2019 23:22:15 +0000 (00:22 +0100)]
Remove ApiMessage from Generic.Files.OneObjectStructurePerFile.MultipleFound

Change-Id: Ib1a08c53f509bdae96ff8d3a5dadc9a55eb6b6af

4 years agoMerge "Fix a couple of Generic.Files.OneObjectStructurePerFile.MultipleFound in api"
jenkins-bot [Sat, 13 Apr 2019 23:49:50 +0000 (23:49 +0000)]
Merge "Fix a couple of Generic.Files.OneObjectStructurePerFile.MultipleFound in api"

4 years agoMerge "changes: Split Feed.php into a class per file"
jenkins-bot [Sat, 13 Apr 2019 23:49:44 +0000 (23:49 +0000)]
Merge "changes: Split Feed.php into a class per file"

4 years agoFix a couple of Generic.Files.OneObjectStructurePerFile.MultipleFound in api
Reedy [Sat, 13 Apr 2019 23:27:04 +0000 (00:27 +0100)]
Fix a couple of Generic.Files.OneObjectStructurePerFile.MultipleFound in api

Change-Id: Ibb6b324b286f62153ce5d08a66454e0b05a0ef78

4 years agoMerge "HistoryAction: Consider 'feed=' and 'feed=0' as invalid feed actions"
jenkins-bot [Sat, 13 Apr 2019 23:32:28 +0000 (23:32 +0000)]
Merge "HistoryAction: Consider 'feed=' and 'feed=0' as invalid feed actions"

4 years agochanges: Split Feed.php into a class per file
Timo Tijhof [Sat, 13 Apr 2019 22:56:06 +0000 (23:56 +0100)]
changes: Split Feed.php into a class per file

Change-Id: I1f11a52871dcb249b3ba790e484dd10fe8bb049f

4 years agoHistoryAction: Consider 'feed=' and 'feed=0' as invalid feed actions
Timo Tijhof [Sat, 13 Apr 2019 22:43:14 +0000 (23:43 +0100)]
HistoryAction: Consider 'feed=' and 'feed=0' as invalid feed actions

Previously it did a PHP truthy check, which is unrelated to the
check in question and outside its responsibility to do.

The validation of the value happens inside HistoryAction::feed
and more specifically in FeedUtils::checkFeedOutput().

Also remove needless use of unicode normalization as this only
accepts exact pre-configured presets. Those presets are linked
by the sidebar and thus never considered user or otherwise
in need of any normalization.

Change-Id: Id68a753bb5a5f03f983f5b813a42e784cf91e8c9

4 years agoMerge "registration: Allow to require environment abilities"
jenkins-bot [Sat, 13 Apr 2019 19:54:04 +0000 (19:54 +0000)]
Merge "registration: Allow to require environment abilities"

4 years agoMerge "installer: Remove TODO per discussion in Ia9f0cd7d0117f67d2017e"
jenkins-bot [Sat, 13 Apr 2019 19:06:02 +0000 (19:06 +0000)]
Merge "installer: Remove TODO per discussion in Ia9f0cd7d0117f67d2017e"

4 years agoresourceloader: Add newline after 'mw.loader.implement()' in debug mode
Fomafix [Sun, 7 Apr 2019 09:12:04 +0000 (11:12 +0200)]
resourceloader: Add newline after 'mw.loader.implement()' in debug mode

The next mw.loader.implement() starts on its own line.

Change-Id: Iae0a5eab58f1065c354018ed23c6a9834973b19d

4 years agoinstaller: Remove TODO per discussion in Ia9f0cd7d0117f67d2017e
Derick Alangi [Sat, 13 Apr 2019 18:01:35 +0000 (19:01 +0100)]
installer: Remove TODO per discussion in Ia9f0cd7d0117f67d2017e

So other developers think that the class property name makes more
sense than the proposed name in the TODO section. In an attempt to
rename it in this patc: Ia9f0cd7d0117f67d2017e, it was rather adviced
to remove the todo and leave the class property name as-is.

Change-Id: I3336b5a6112f098e290f102caac6b04c0b50b076

4 years agoDevelopmentSettings: Remove unused globals & declare $wgSQLMode
Derick Alangi [Wed, 10 Apr 2019 16:01:12 +0000 (17:01 +0100)]
DevelopmentSettings: Remove unused globals & declare $wgSQLMode

Some globals where declared but not used and $wgSQLMode was not declared
at all. Removed the unsed vars.

Change-Id: I44e6b8b6173674089271a172cf7bda6e320c53d8

4 years agoMerge "Reporting API and Feature Policy reporting support"
jenkins-bot [Sat, 13 Apr 2019 16:50:39 +0000 (16:50 +0000)]
Merge "Reporting API and Feature Policy reporting support"

4 years agoregistration: Allow to require environment abilities
MGChecker [Sat, 13 Oct 2018 22:24:31 +0000 (00:24 +0200)]
registration: Allow to require environment abilities

This patch adds the possibility for extensions and skins to require
certain environment abiltites that are not necessarily PHP extensions.

For now, the only ability introduced is the ability to shell out, but
the processing and testing is written in a more general way to allow
users to add more abilties later on by just changing getAbilities().

In theory, this allows using VersionChecker to check for random
abilities if they are specified in the constructor, as it is comletely
environment agnostic and not really bound to just be used for checking
extension compatibility.

Furthermore, it is possible to specify custom error messages for each of
these abilities in the constructor. Other parts of MediaWiki may use
these features to check for requirements while working with totally
different abilities.

Bug: T212472
Change-Id: Iff8512530b08ef509e7ac0b6ed8fe9578ef3e2a1

4 years agoMerge "linting: Start enforcing a basic CSS class naming rule (with lots of opt-outs)"
jenkins-bot [Sat, 13 Apr 2019 14:37:00 +0000 (14:37 +0000)]
Merge "linting: Start enforcing a basic CSS class naming rule (with lots of opt-outs)"

4 years agoMerge "Third argument to unpack() requires PHP 7.1"
jenkins-bot [Sat, 13 Apr 2019 08:24:42 +0000 (08:24 +0000)]
Merge "Third argument to unpack() requires PHP 7.1"

4 years agoReporting API and Feature Policy reporting support
Gilles Dubuc [Fri, 22 Mar 2019 05:43:30 +0000 (06:43 +0100)]
Reporting API and Feature Policy reporting support

These are experimental APIs that lets one report
policy violations:


Bug: T209572
Change-Id: I002e7802000ec37b3320d8ae761cc1888d4f6edb

4 years agoImprove comments of outputVariesOnRevisionMetaData()
Aaron Schulz [Sat, 13 Apr 2019 03:32:53 +0000 (20:32 -0700)]
Improve comments of outputVariesOnRevisionMetaData()

Change-Id: Ie54e068515ac09af27fdc38eef7863c3a4d252f8

4 years agoMerge "Add vary-revision-exist flag to handle {{REVISIONID}} and parser cache"
jenkins-bot [Sat, 13 Apr 2019 00:43:27 +0000 (00:43 +0000)]
Merge "Add vary-revision-exist flag to handle {{REVISIONID}} and parser cache"

4 years agoAdd vary-revision-exist flag to handle {{REVISIONID}} and parser cache
Aaron Schulz [Fri, 12 Apr 2019 23:54:31 +0000 (16:54 -0700)]
Add vary-revision-exist flag to handle {{REVISIONID}} and parser cache

Follow-up to c537eb186862b3

Bug: T220854
Change-Id: Idc19cc29764a38e3671ca1dea158bd5fb46eaf4d

4 years agoMerge "Remove bogus field references in DerivedPageDataUpdater"
jenkins-bot [Sat, 13 Apr 2019 00:04:23 +0000 (00:04 +0000)]
Merge "Remove bogus field references in DerivedPageDataUpdater"

4 years agoMerge "parser: Fix return type for methods and match phpdoc comments"
jenkins-bot [Fri, 12 Apr 2019 23:53:07 +0000 (23:53 +0000)]
Merge "parser: Fix return type for methods and match phpdoc comments"

4 years agoMerge "logging: Replace deprecated use of CommentStore::getStore()"
jenkins-bot [Fri, 12 Apr 2019 23:49:05 +0000 (23:49 +0000)]
Merge "logging: Replace deprecated use of CommentStore::getStore()"

4 years agoMerge "Category: Remove "todo" comment about moving code from CategoryPage"
jenkins-bot [Fri, 12 Apr 2019 23:44:51 +0000 (23:44 +0000)]
Merge "Category: Remove "todo" comment about moving code from CategoryPage"

4 years agoparser: Fix return type for methods and match phpdoc comments
Derick Alangi [Mon, 25 Mar 2019 14:16:23 +0000 (15:16 +0100)]
parser: Fix return type for methods and match phpdoc comments

Change-Id: I867d7eb6fc56cc52eb8e129977b7a62607a11268

4 years agoRemove bogus field references in DerivedPageDataUpdater
Aaron Schulz [Fri, 12 Apr 2019 23:33:09 +0000 (16:33 -0700)]
Remove bogus field references in DerivedPageDataUpdater

Change-Id: I4f781d9136e01c4a7bbc316fee622c0933329a0e

4 years agologging: Replace deprecated use of CommentStore::getStore()
Derick Alangi [Sun, 31 Mar 2019 22:46:40 +0000 (23:46 +0100)]
logging: Replace deprecated use of CommentStore::getStore()

Change-Id: I5c34eda43d0d312bc53fc5e9ad618cb80284e34b

4 years agoCategory: Remove "todo" comment about moving code from CategoryPage
Eugene Gvozdetsky [Fri, 16 Nov 2018 09:13:32 +0000 (10:13 +0100)]
Category: Remove "todo" comment about moving code from CategoryPage

All stuff was already moved from CategoryPage.php to Category.php

Change-Id: I19820ec573c39d7368e3c6644e7c54ca9d8104c5

4 years agoMerge "Improve documentation of constants throughout the codebase"
jenkins-bot [Fri, 12 Apr 2019 21:38:16 +0000 (21:38 +0000)]
Merge "Improve documentation of constants throughout the codebase"

4 years agoMerge "parser: Convert wikitext Preprocessor class to using WAN cache"
jenkins-bot [Fri, 12 Apr 2019 21:23:57 +0000 (21:23 +0000)]
Merge "parser: Convert wikitext Preprocessor class to using WAN cache"

4 years agoMerge "HistoryPager: Unset 'date-range-to' parameter when paging"
jenkins-bot [Fri, 12 Apr 2019 21:02:56 +0000 (21:02 +0000)]
Merge "HistoryPager: Unset 'date-range-to' parameter when paging"

4 years agoparser: Convert wikitext Preprocessor class to using WAN cache
Aaron Schulz [Thu, 28 Feb 2019 20:54:49 +0000 (12:54 -0800)]
parser: Convert wikitext Preprocessor class to using WAN cache

Change-Id: Ida96a976109f7ceee0003b9d1d487c8cf9b80114

4 years agoMerge "Get rid of unnecessary func_get_args() and friends"
jenkins-bot [Fri, 12 Apr 2019 20:36:15 +0000 (20:36 +0000)]
Merge "Get rid of unnecessary func_get_args() and friends"

4 years agoMerge "Set MW_INSTALL_PATH in Maintenance.php"
jenkins-bot [Fri, 12 Apr 2019 20:34:45 +0000 (20:34 +0000)]
Merge "Set MW_INSTALL_PATH in Maintenance.php"

4 years agoMerge "HTMLFormFieldWithButton: Allow passing 'inputtype' and pass through 'buttonid'"
jenkins-bot [Fri, 12 Apr 2019 20:22:58 +0000 (20:22 +0000)]
Merge "HTMLFormFieldWithButton: Allow passing 'inputtype' and pass through 'buttonid'"

4 years agoMerge "dao: Correct return type doc for getLoadBalancer()"
jenkins-bot [Fri, 12 Apr 2019 20:18:30 +0000 (20:18 +0000)]
Merge "dao: Correct return type doc for getLoadBalancer()"

4 years agoGet rid of unnecessary func_get_args() and friends
Aryeh Gregor [Mon, 8 Oct 2018 14:10:45 +0000 (17:10 +0300)]
Get rid of unnecessary func_get_args() and friends

HHVM does not support variadic arguments with type hints.  This is
mostly not a big problem, because we can just drop the type hint, but
for some reason PHPUnit adds a type hint of "array" when it creates
mocks, so a class with a variadic method can't be mocked (at least in
some cases).  As such, I left alone all the classes that seem like
someone might like to mock them, like Title and User.  If anyone wants
to mock them in the future, they'll have to switch back to
func_get_args().  Some of the changes are definitely safe, like
functions and test classes.

In most cases, func_get_args() (and/or func_get_arg(), func_num_args() )
were only present because the code was written before we required PHP
5.6, and writing them as variadic functions is strictly superior. In
some cases I left them alone, aside from HHVM compatibility:

* Forwarding all arguments to another function. It's useful to keep
  func_get_args() here where we want to keep the list of expected
  arguments and their meanings in the function signature line for
  documentation purposes, but don't want to copy-paste a long line of
  argument names.
* Handling deprecated calling conventions.
* One or two miscellaneous cases where we're basically using the
  arguments individually but want to use them as an array as well for
  some reason.

Change-Id: I066ec95a7beb7c0665146195a08e7cce1222c788

4 years agoAdd test to check action- messages exist
Reedy [Thu, 11 Apr 2019 23:26:51 +0000 (00:26 +0100)]
Add test to check action- messages exist

Bug: T220779
Change-Id: Ide681e1f03957a8024f538ea6cac4e4396fef23e

4 years agolinting: Start enforcing a basic CSS class naming rule (with lots of opt-outs)
James D. Forrester [Fri, 12 Apr 2019 17:12:42 +0000 (10:12 -0700)]
linting: Start enforcing a basic CSS class naming rule (with lots of opt-outs)

Wow, so many opt-outs, and a lot of probably-not-going-to-change ones.

Actually wanted pattern:
* "^mw-…"

Content-related classes we're probably not going to scrap:
* "^wikitable$"

Hard-to-change classes used in lots of skins:
* "^toc$"
* "^toctoggle$"
* "^tochidden$"

Necessary for over-rides/specificity battles:
* "^oo-ui-…"

Probably worth considering changing soon:
* "^client-js$"
* "^client-nojs$"

Some of the exemptions have been applied to deprecated styles (where they're being
renamed); some are for code in entirely deprecated areas themselves; some have the
"wrong" name but sit alongside classes with an appropriate one. And some are, very
clearly, in the wrong repo. Such sigh.

Change-Id: I9b8423d53b6750b5ca79d2f69e111f75c93c5bdc

4 years agoAdd missing action- messages to MW Core
Ammar [Fri, 12 Apr 2019 16:22:55 +0000 (17:22 +0100)]
Add missing action- messages to MW Core

Bug: T220810
Change-Id: Ic43435bc42c23f055bde0c6cf7648d9f219cfb34

4 years agoresourceloader: Avoid global window.mwTestFooJsCounter in unit tests
Fomafix [Sun, 24 Feb 2019 09:08:49 +0000 (10:08 +0100)]
resourceloader: Avoid global window.mwTestFooJsCounter in unit tests

This change avoids a failure when running Special:JavaScriptTest with
the option noglobals.

Change-Id: Id61fca5ccedbd793f7786ad95681eaebb9feafb6

4 years agoMerge "Fix order of @var parameter in PHP"
jenkins-bot [Fri, 12 Apr 2019 15:17:23 +0000 (15:17 +0000)]
Merge "Fix order of @var parameter in PHP"

4 years agoMerge "Use https://www.php.net/ instead of https://secure.php.net/"
jenkins-bot [Fri, 12 Apr 2019 14:58:32 +0000 (14:58 +0000)]
Merge "Use https://php.net/ instead of https://secure.php.net/"

4 years agordbms: drop inappropriate and poorly documented "DatabaseOraclePostInit" hook
Aaron Schulz [Wed, 10 Apr 2019 01:46:47 +0000 (18:46 -0700)]
rdbms: drop inappropriate and poorly documented "DatabaseOraclePostInit" hook

Change-Id: I3152e80d99b040b7918927e6c2a215cab59a9b10

4 years agoLocalisation updates from https://translatewiki.net.
Translation updater bot [Fri, 12 Apr 2019 06:11:08 +0000 (08:11 +0200)]
Localisation updates from https://translatewiki.net.

Change-Id: Id524db06f2e39860f8455a22ee5805cfe06e4f8f

4 years agoUse https://www.php.net/ instead of https://secure.php.net/
Fomafix [Fri, 12 Apr 2019 04:41:14 +0000 (06:41 +0200)]
Use https://php.net/ instead of https://secure.php.net/

Change-Id: I0acca592c6909e91b28b904da49dcbd6a43cd2a5

4 years agosearch: make legalSearchChars() non-static
Aaron Schulz [Fri, 12 Apr 2019 00:54:26 +0000 (17:54 -0700)]
search: make legalSearchChars() non-static

No outside callers from code in gerrit are using this statically

Change-Id: I9513a5384bca71f419a9af09908678bcc86c0263

4 years agoHistoryPager: Unset 'date-range-to' parameter when paging
Bartosz Dziewoński [Fri, 12 Apr 2019 00:20:28 +0000 (02:20 +0200)]
HistoryPager: Unset 'date-range-to' parameter when paging

Follow-up to 1b27cee8979b2fefa65dafee237485787693eb98. This fixes
paging on Special:History, and matches the existing behavior for the
previously supported 'year'/'month' parameters.

It is possible that this should be unset in IndexPager. However, in a
quick test, other pagers that have filtering by date seem to function
correctly already (tested Special:Contributions and Special:Log).
I'm making this change in HistoryPager to avoid accidentally breaking
anything, but perhaps this should be reevaluated.

Maybe the real bug is that 'date-range-to' is not ignored when
'offset' is specified?

Bug: T220781
Change-Id: I01c309178e6d5d9c919f410c64e2b833a5750141

4 years agoMerge "Fix docs for MWNamespace::clearCaches() removal"
jenkins-bot [Thu, 11 Apr 2019 23:01:28 +0000 (23:01 +0000)]
Merge "Fix docs for MWNamespace::clearCaches() removal"

4 years agoMerge "Follow-up 4ee606f: Add note to RELEASE-NOTES-1.34 now we know where it landed"
jenkins-bot [Thu, 11 Apr 2019 22:58:20 +0000 (22:58 +0000)]
Merge "Follow-up 4ee606f: Add note to RELEASE-NOTES-1.34 now we know where it landed"

4 years agoFix docs for MWNamespace::clearCaches() removal
Aryeh Gregor [Thu, 11 Apr 2019 11:21:41 +0000 (14:21 +0300)]
Fix docs for MWNamespace::clearCaches() removal

Originally I had intended setMwGlobals() to magically reset the
namespace-related services if namespace-related settings were changed,
but Tim told me to remove it during review and I forgot to update the
release notes. Moving forward, everyone will need to reset services
after every config change to ensure correctness, and there's no point in
trying to reset specific services automatically as special cases.

I also moved the note to the 1.34 notes, since this missed the cutoff
and should not be backported.

Change-Id: Ib7cbdaef22a15ddfc7aaf99d0972b99d3cddc011

4 years agoMerge "rdbms: inject reserved word table name rewrite logic into DatabaseOracle"
jenkins-bot [Thu, 11 Apr 2019 22:38:10 +0000 (22:38 +0000)]
Merge "rdbms: inject reserved word table name rewrite logic into DatabaseOracle"

4 years agoMerge "rdbms: optimize DBConnRef::getType() to avoid connections when possible"
jenkins-bot [Thu, 11 Apr 2019 22:34:14 +0000 (22:34 +0000)]
Merge "rdbms: optimize DBConnRef::getType() to avoid connections when possible"