wiki.techinc.nl/tests/phpunit/structure
Máté Szabó c04cb6f607 Include core PSR-4 classes in the generated classmap
It appears that autoloading classes via MediaWiki's PSR-4 autoloader has
a not insignificant performance penalty, especially when hundreds of
PSR-4 classes like HookRunner's hook interfaces are autoloaded. Using a
classmap autoloader, like we already do for PSR-4 classes from Composer
dependencies, is a potential way to reduce the performance impact
here.[1]

For core classes, this can be done by simply not excluding PSR-4 classes
in AutoloadGenerator, causing it to include appropriate mappings in the
generated autoload.php classmap. I had to exclude one class_alias()
declared in Result.php from the classmap with a NO_AUTOLOAD stanza,
because including it broke AutoLoaderStructureTest's assertion that all
aliases should be defined in the same file as the aliased class.
Assuming this is still an issue, this would already have been a problem
because the test was previously skipping every PSR-4 class. Excluding
this file via NO_AUTOLOAD just restores that status quo.
----
[1] https://phabricator.wikimedia.org/T274041#8358399

Bug: T274041
Change-Id: I0aa62c944d874bf7a9f3a240e72e58fe6a887b28
2022-11-08 12:13:32 +01:00
..
AbstractSchemaValidationTest.php Add @coversNothing to all structure tests 2022-10-07 03:21:54 +02:00
ApiPrefixUniquenessTest.php Reorg: Move some of request related classes to MediaWiki/Request 2022-10-28 10:15:31 +00:00
ApiStructureTest.php Add @coversNothing to all structure tests 2022-10-07 03:21:54 +02:00
AutoLoaderStructureTest.php Include core PSR-4 classes in the generated classmap 2022-11-08 12:13:32 +01:00
AvailableRightsTest.php Add @coversNothing to all structure tests 2022-10-07 03:21:54 +02:00
BundleSizeTest.php Reorg: Move some of request related classes to MediaWiki/Request 2022-10-28 10:15:31 +00:00
ContentHandlerFunctionalTest.php Add @coversNothing to all structure tests 2022-10-07 03:21:54 +02:00
DatabaseIntegrationTest.php Add @coversNothing to all structure tests 2022-10-07 03:21:54 +02:00
DumpableObjectsTest.php Add some helpers to filter properties out of var_dump() 2022-10-12 12:42:23 -04:00
ExtensionJsonValidationTest.php Add @coversNothing to all structure tests 2022-10-07 03:21:54 +02:00
ForeignResourceStructureTest.php Reorg: Move ForeignResourceManager to ResourceLoader directory 2022-11-08 10:54:17 +01:00
PasswordPolicyStructureTest.php Add @coversNothing to all structure tests 2022-10-07 03:21:54 +02:00
ResourcesTest.php Reorg: Move some of request related classes to MediaWiki/Request 2022-10-28 10:15:31 +00:00
RestStructureTest.php Add @coversNothing to all structure tests 2022-10-07 03:21:54 +02:00
ScopeStructureTest.php Add @coversNothing to all structure tests 2022-10-07 03:21:54 +02:00
SettingsTest.php Settings: add support for obsolete config 2022-10-14 15:00:43 +02:00
SpecialPageFatalTest.php Add @coversNothing to all structure tests 2022-10-07 03:21:54 +02:00
StructureTest.php Add @coversNothing to all structure tests 2022-10-07 03:21:54 +02:00
SuiteDirectoryTest.php Use short array destructuring instead of list() 2022-10-21 15:33:37 +11:00