Page MenuHomePhabricator

Reduce number of files directly under includes/
Closed, ResolvedPublic

Description

Currently there is around 90 files directly under includes/ and range from TemplateParser to DummyLinker to BadFileLookup. This doesn't make a great developer experience and can be overwhelming to people who are new to mediawiki.

See the parent ticket for the suggested moves.

To move:
None

To remove:

  • includes/Hooks.php: Deprecated since 1.35, to be removed (T335536)

Done:

  • includes/ActorMigration.php
  • includes/ActorMigrationBase.php
  • includes/BadFileLookup.php
  • includes/CategoriesRdf.php
  • includes/Category.php
  • includes/CategoryViewer.php
  • includes/CommentStore.php
  • includes/CommentStoreComment.php
  • includes/ConfiguredReadOnlyMode.php
  • includes/ContentSecurityPolicy.php
  • includes/DeprecatedGlobal.php
  • includes/DerivativeRequest.php
  • includes/DummyLinker.php
  • includes/EditPage.php
  • includes/Emptiable.php
  • includes/FauxRequest.php
  • includes/FauxRequestUpload.php
  • includes/FauxResponse.php
  • includes/FileDeleteForm.php
  • includes/ForeignResourceManager.php
  • includes/FormOptions.php
  • includes/HeaderCallback.php
  • includes/Html.php
  • includes/HtmlHelper.php
  • includes/LinkFilter.php
  • includes/Linker.php
  • includes/ListToggle.php
  • includes/MagicWord.php
  • includes/MagicWordArray.php
  • includes/MagicWordFactory.php
  • includes/MediaWikiVersionFetcher.php
  • includes/MergeHistory.php
  • includes/MovePage.php
  • includes/PageProps.php
  • includes/PathRouter.php
  • includes/ProtectionForm.php
  • includes/RawMessage.php
  • includes/ReadOnlyMode.php
  • includes/Status.php
  • includes/StubGlobalUser.php
  • includes/StubObject.php
  • includes/StubUserLang.php
  • includes/TemplateParser.php
  • includes/TemplatesOnThisPageFormatter.php
  • includes/Title.php
  • includes/TitleArray.php
  • includes/TitleArrayFromResult.php
  • includes/TitleFactory.php
  • includes/TrackingCategories.php
  • includes/WebRequestUpload.php
  • includes/WebResponse.php
  • includes/WikiMap.php
  • includes/WikiReference.php
  • includes/config-merge-strategies.php
  • includes/config-vars.php
  • includes/SiteStats.php
  • includes/SiteStatsInit.php
  • includes/Pingback.php
  • includes/EventRelayerGroup.php
  • includes/ProxyLookup.php
  • includes/MWTimestamp.php
  • includes/ExtensionInfo.php
  • includes/GitInfo.php
  • includes/OutputHandler.php
  • includes/OutputPage.php
  • includes/StreamFile.php
  • includes/NoLocalSettings.php
  • includes/SiteConfiguration.php
  • includes/WebRequest.php

Won't be done:

  • includes/AutoLoader.php Core wiring
  • includes/BootstrapHelperFunctions.php Core wiring
  • includes/DefaultSettings.php Core wiring
  • includes/Defines.php Core wiring
  • includes/DevelopmentSettings.php Core wiring
  • includes/GlobalFunctions.php Core wiring
  • includes/MainConfigNames.php Core wiring
  • includes/MainConfigSchema.php Core wiring
  • includes/MediaWiki.php Core wiring
  • includes/MediaWikiServices.php Core wiring
  • includes/PHPVersionCheck.php Core wiring
  • includes/PlatformSettings.php Core wiring
  • includes/ServiceWiring.php Core wiring
  • includes/Setup.php Core wiring
  • includes/SetupDynamicConfig.php Core wiring (Split of Setup.php)
  • includes/WebStart.php Core wiring
  • includes/config-schema.php Core wiring

Details

SubjectRepoBranchLines +/-
mediawiki/coremaster+6 -8
mediawiki/coremaster+154 -65
mediawiki/coremaster+66 -31
mediawiki/tools/phanmaster+6 -4
mediawiki/coremaster+1 -1
mediawiki/coremaster+192 -73
mediawiki/coremaster+330 -133
mediawiki/coremaster+15 -3
mediawiki/coremaster+9 -6
mediawiki/coremaster+103 -37
mediawiki/coremaster+12 -5
mediawiki/coremaster+11 -2
mediawiki/coremaster+19 -1
mediawiki/coremaster+54 -56
mediawiki/coremaster+61 -28
mediawiki/coremaster+30 -2
mediawiki/coremaster+5 -2
mediawiki/coremaster+2 -2
mediawiki/coreREL1_40+58 -2
mediawiki/coremaster+58 -2
mediawiki/coremaster+87 -30
mediawiki/coremaster+20 -2
mediawiki/coremaster+34 -11
mediawiki/coremaster+90 -15
mediawiki/coremaster+117 -37
mediawiki/coremaster+331 -74
mediawiki/coremaster+31 -7
mediawiki/coremaster+89 -25
mediawiki/coremaster+79 -11
mediawiki/coremaster+26 -10
mediawiki/coremaster+72 -38
mediawiki/coremaster+57 -10
mediawiki/coremaster+61 -15
mediawiki/coremaster+15 -3
mediawiki/coremaster+121 -13
mediawiki/coremaster+2 -1
mediawiki/coremaster+18 -6
mediawiki/coremaster+13 -10
mediawiki/coremaster+252 -123
Show related patches Customize query in gerrit

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes

For MediaWikiVersionFetcher it's better to simply add it to the bluepsice repo and hard-deprecate it in core. It'd be great to do it before the branch cut. I'll try ASAP.

Change 906054 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/core@master] Add namespaced classes to 1.40 release notes

https://gerrit.wikimedia.org/r/906054

Change 906054 merged by jenkins-bot:

[mediawiki/core@master] Add namespaced classes to 1.40 release notes

https://gerrit.wikimedia.org/r/906054

Change 905984 had a related patch set uploaded (by Jforrester; author: Amir Sarabadani):

[mediawiki/core@REL1_40] Add namespaced classes to 1.40 release notes

https://gerrit.wikimedia.org/r/905984

Change 905984 merged by jenkins-bot:

[mediawiki/core@REL1_40] Add namespaced classes to 1.40 release notes

https://gerrit.wikimedia.org/r/905984

Change 910554 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/core@master] Reorg: Move MediaWikiVersionFetcher to composer/

https://gerrit.wikimedia.org/r/910554

Change 910555 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/core@master] Reorg: Move Emptiable to libs/

https://gerrit.wikimedia.org/r/910555

Change 910554 merged by jenkins-bot:

[mediawiki/core@master] Reorg: Move MediaWikiVersionFetcher to composer/

https://gerrit.wikimedia.org/r/910554

Change 910555 merged by jenkins-bot:

[mediawiki/core@master] Reorg: Move Emptiable to libs/

https://gerrit.wikimedia.org/r/910555

Change 912414 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/core@master] Reorg: Move SiteStats*.php to SiteStats/

https://gerrit.wikimedia.org/r/912414

Change 912414 merged by jenkins-bot:

[mediawiki/core@master] Reorg: Move SiteStats*.php to SiteStats/

https://gerrit.wikimedia.org/r/912414

Change 913129 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/core@master] Reorg: Move ReadOnlyMode classes to db/

https://gerrit.wikimedia.org/r/913129

Change 913129 merged by jenkins-bot:

[mediawiki/core@master] Reorg: Move ReadOnlyMode classes to db/

https://gerrit.wikimedia.org/r/913129

Change 915849 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/core@master] rdbms: Move ReadOnlyMode and ConfiguredReadOnlyMode to rdbms library

https://gerrit.wikimedia.org/r/915849

Change 915885 had a related patch set uploaded (by Krinkle; author: Krinkle):

[mediawiki/core@master] registration: Move ExtensionInfo out of includes/

https://gerrit.wikimedia.org/r/915885

Change 915849 merged by jenkins-bot:

[mediawiki/core@master] rdbms: Move ReadOnlyMode and ConfiguredReadOnlyMode to rdbms library

https://gerrit.wikimedia.org/r/915849

Change 926597 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/core@master] Reorg: Move Pingback to installer/

https://gerrit.wikimedia.org/r/926597

Change 926597 merged by jenkins-bot:

[mediawiki/core@master] Reorg: Move Pingback to installer/

https://gerrit.wikimedia.org/r/926597

Change 928951 had a related patch set uploaded (by Zabe; author: Zabe):

[mediawiki/core@master] Reorg: Move EventRelayerGroup to libs/eventrelayer/

https://gerrit.wikimedia.org/r/928951

Change 928951 merged by jenkins-bot:

[mediawiki/core@master] Reorg: Move EventRelayerGroup to libs/eventrelayer/

https://gerrit.wikimedia.org/r/928951

Change 945928 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/core@master] Reorg: Move ProxyLookup to Request/

https://gerrit.wikimedia.org/r/945928

Change 945928 merged by jenkins-bot:

[mediawiki/core@master] Reorg: Move ProxyLookup to Request/

https://gerrit.wikimedia.org/r/945928

Change 950230 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/core@master] Reorg: Move MWTimestamp to MediaWiki\Utils

https://gerrit.wikimedia.org/r/950230

Change 950230 merged by jenkins-bot:

[mediawiki/core@master] Reorg: Move MWTimestamp to MediaWiki\Utils

https://gerrit.wikimedia.org/r/950230

Change 950686 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/core@master] Reorg: Move ExtensionInfo to utils/

https://gerrit.wikimedia.org/r/950686

Change 950686 merged by jenkins-bot:

[mediawiki/core@master] Reorg: Move ExtensionInfo to utils/

https://gerrit.wikimedia.org/r/950686

Change 951158 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/core@master] Reorg: Move GitInfo to utils/

https://gerrit.wikimedia.org/r/951158

Change 951158 merged by jenkins-bot:

[mediawiki/core@master] Reorg: Move GitInfo to utils/

https://gerrit.wikimedia.org/r/951158

Change 952391 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/core@master] Reorg: Move Status to MediaWiki\Status\

https://gerrit.wikimedia.org/r/952391

Change 952391 merged by jenkins-bot:

[mediawiki/core@master] Reorg: Move Status to MediaWiki\Status\

https://gerrit.wikimedia.org/r/952391

Status and StatusValue have also hard-coded taints in phan-taint (T321806)
But Html, Linker and CommentStore with hard-coded taints was also namespaced in the meantime, so not sure if that is really a blocker as noted by me in the task description

Can we just copy paste all classes in phan-taint and call it a day?

Change 954975 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/core@master] Reorg: Move three output related classes to includes/Output/

https://gerrit.wikimedia.org/r/954975

Change 954975 merged by jenkins-bot:

[mediawiki/core@master] Reorg: Move three output related classes to includes/Output/

https://gerrit.wikimedia.org/r/954975

Change 955326 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/core@master] Reorg: Move NoLocalSettings to Output/

https://gerrit.wikimedia.org/r/955326

Change 955326 merged by jenkins-bot:

[mediawiki/core@master] Reorg: Move NoLocalSettings to Output/

https://gerrit.wikimedia.org/r/955326

Change 955712 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/core@master] Reorg: Move SiteConfiguration to includes/config/

https://gerrit.wikimedia.org/r/955712

Change 955714 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/core@master] Reorg: Move WebRequest to includes\Request

https://gerrit.wikimedia.org/r/955714

Change 955784 had a related patch set uploaded (by Ladsgroup; author: Amir Sarabadani):

[mediawiki/tools/phan@master] Alias global variable types to the namespaced ones

https://gerrit.wikimedia.org/r/955784

Change 955784 merged by jenkins-bot:

[mediawiki/tools/phan@master] "Auto discovery" of namespaces of wgConf and wgRequest

https://gerrit.wikimedia.org/r/955784

Change 955712 merged by jenkins-bot:

[mediawiki/core@master] Reorg: Move SiteConfiguration to includes/config/

https://gerrit.wikimedia.org/r/955712

Change 955714 merged by jenkins-bot:

[mediawiki/core@master] Reorg: Move WebRequest to includes\Request

https://gerrit.wikimedia.org/r/955714

Ladsgroup updated the task description. (Show Details)

Change 915885 abandoned by Umherirrender:

[mediawiki/core@master] registration: Move ExtensionInfo out of includes/

Reason:

Moved with I5d0539821ded4ed9f2698ecbc76c2678612f1c97

https://gerrit.wikimedia.org/r/915885