Go to file
Daimona Eaytoy ef50bfeda5 Make Title and Revision caches proper services
Singletons are bad, amongst other reasons, because they're never reset
in tests. They can therefore occasionally cause test failures if the
cached data stored in one of these singletons becomes stale.

As noted on the task, ideally these two classes shouldn't exist at all,
and core should be responsible for caching the information it deems
expensive to compute.

As a temporary (TM) workaround, make both classes actual services, so
that the setUp/tearDown logic in MediaWikiIntegrationTestCase can
properly reset them between tests.

Dependencies are intentionally not being injected, precisely because
these classes should just be deleted, not improved.

Bug: T344124
Change-Id: I58b8d9610f9447468235b94d25732528ab6acce6
2023-08-14 17:41:23 +02:00
.phan Add phan 2019-04-10 18:51:59 +02:00
i18n Localisation updates from https://translatewiki.net. 2023-08-14 09:17:33 +02:00
images Remove all traces of cross-wiki beta feature 2019-04-17 22:18:13 -07:00
includes Make Title and Revision caches proper services 2023-08-14 17:41:23 +02:00
maintenance Update moved class WikiMap 2023-04-25 09:53:21 +00:00
modules Disable Echo behaviour on Minerva desktop 2023-08-08 10:47:19 -07:00
scripts Use ::class for class name resolution 2022-06-16 22:36:46 +02:00
sql patch-echo_push_subscription-add-column-eps_topic.sql: Add table prefix 2022-12-20 14:36:47 +00:00
tests Make Title and Revision caches proper services 2023-08-14 17:41:23 +02:00
.eslintignore eslint: Use .eslintignore 2022-05-09 14:00:02 +01:00
.eslintrc.json eslint: Lint Gruntile.js using server rules 2022-02-07 16:30:24 +00:00
.gitignore Add DS_Store to gitignore 2021-07-13 13:58:44 -05:00
.gitreview Whoops, track not trace 2016-10-24 17:02:28 -07:00
.mailmap Update Legoktm's mailmap entry 2021-04-11 19:15:52 -07:00
.phpcs.xml tests: Resolve phpunit filename deprecation errors 2023-08-12 21:07:15 +02:00
.stylelintrc.json stylelint: Enable selector-pseudo-element-colon-notation 2023-03-30 00:24:47 +02:00
.svgo.config.js build: Update SVGO to v3.0.2 & re-crush icons 2023-06-14 19:12:11 +00:00
CODE_OF_CONDUCT.md build: Updating mediawiki/mediawiki-codesniffer to 22.0.0 2018-09-03 01:46:10 +00:00
composer.json build: Updating dependencies 2023-04-29 02:45:29 +00:00
COPYING Add COPYING 2014-01-24 16:00:24 -08:00
Echo.alias.php Add special page name translations in Norwegian Bokmål and Nynorsk 2023-06-21 11:43:20 +00:00
extension.json Update notification badge to not rely on mw-ui-icon 2023-08-02 19:10:34 +00:00
Gruntfile.js eslint: Use .eslintignore 2022-05-09 14:00:02 +01:00
jsduck.external.js build: Update eslint-config-wikimedia to 0.16.1 2020-06-15 16:19:00 +01:00
jsduck.json Add JSDuck support and fix errors 2016-05-11 14:07:12 -07:00
jsduck_custom_tags.rb jsduck: Remove custom @source tag 2016-09-21 00:51:46 +01:00
package-lock.json build: Update SVGO to v3.0.2 & re-crush icons 2023-06-14 19:12:11 +00:00
package.json build: Update SVGO to v3.0.2 & re-crush icons 2023-06-14 19:12:11 +00:00
quibble.yaml build: Add quibble.yaml and enable early warning bot feedback 2023-03-31 11:42:44 +02:00
RELEASE_NOTES BREAKING CHANGE: Use ISO 8601 for 'ts' in cross-wiki summary. 2016-07-27 17:00:05 -04:00
ServiceWiring.php Make Title and Revision caches proper services 2023-08-14 17:41:23 +02:00