Discovering MediaWiki 1.44: Key Features for Developers
A verified look at MediaWiki 1.44: what was removed, what was added (notifications framework, FeatureShutdown, OpenSearch support), and what skin and extension authors must fix.
MediaWiki 1.44 was released as a stable release on 2 July 2025, and by now its REL1_44 branch has reached maintenance-only status — 1.45 has taken over as the current release, and 1.46 (the next LTS) is in development. That makes 1.44 a snapshot of where the platform stands for extension developers: it was the release where several long-deprecated pieces of API code were finally removed, and where a few genuinely new mechanisms landed. This article covers the changes that matter when you write code against it.
The headline: a notifications framework in core
MediaWiki 1.44 introduces a built-in notifications framework (see Manual:Notifications) that core and extensions can use to produce notifications for users. You still need the Notifications (Echo) extension for users to actually see and manage them — Echo remains the delivery UI — but the event side of the pipeline is now a core service with middleware, not an extension-specific mechanism. If you previously coupled your extension to Echo classes for sending notifications, 1.44 is the right moment to migrate to the core framework.
Breaking changes: the cleanup you need to plan for
1.44 removed a large batch of long-deprecated APIs. The ones most likely to affect real extensions:
wfGetDB()is gone. The global DB accessor, deprecated in 1.39, was removed — use injectedIDBProvider/LoadBalancerservicesApiPageSet::getTitles()and friends removed. API modules must switch togetPageIdentities()-style accessorsParsoidOutputAccessremoved. The class was deprecated in 1.43; useParsoidOutputAccessUnstableor the new output pipelineOutputPage::mModules/mModuleStylesremoved (deprecated since 1.38) — public mutation of module state is no longer possibleHtmlToContentTransform::setMetrics()andHtmlInputTransformHelper::setMetrics()now require aStatsFactoryargument- Message API cleanup —
Message::objectParam(),MessageValue::objectParams()and theMediaWiki\Message\Converterclass were removed - StatusValue no longer accepts
MessageSpecifierwith a separate parameters array UploadBase::OVERWRITE_EXISTING_FILEandHOOK_ABORTEDconstants removed
The full list is in the 1.44 release notes; the short version is that anything flagged as "deprecated in 1.39–1.43" should be treated as deleted in 1.44.
New services and facilities
FeatureShutdownservice — provides controlled outages for deprecated interfaces, letting operators disable a deprecated feature on a live wiki before upgrading past its removal- Notification middleware — the new notifications pipeline supports middleware to filter talk-page notifications, replacing the deprecated
AbortTalkPageEmailNotificationhook - Forward-compatible parser output flags —
ParserOutputgained serialization support for flags that will be used in 1.46 - New
parsedreasonAPI parameter forlist=blocks— block reasons as parsed HTML, for clients that render them - Richer
siteinfo—action=query&meta=siteinfonow lists all user groups and their granted permissions, including inherited ones from$wgGroupInheritsPermissions - CirrusSearch + OpenSearch — for search deployments, MediaWiki 1.44 is the first version compatible with OpenSearch 1.3 as a backend alongside Elasticsearch
Extension and skin packaging changes
- CheckUser and TemplateStyles are now bundled with MediaWiki, which simplifies installs and upgrades for wikis running either extension
- Interwiki was merged into core — the extension is no longer needed; the interwiki table is editable from
Special:Interwikiout of the box. Note the removed settings:$wgInterwikiCentralDB,$wgInterwikiCentralInterlanguageDBand$wgInterwikiViewOnlyare gone, replaced by virtual-domain mapping and theinterwikiright respectively - Skin authors: heading markup changed. The default HTML markup for wikitext headings changed in 1.44 (
ParserEnableLegacyHeadingDOMnow defaults tofalse). Skins and CSS that target the old heading DOM need updating; the legacy markup can be restored temporarily with$wgParserEnableLegacyHeadingDOM = true;, but that escape hatch will be removed in the next release
Configuration changes worth knowing
$wgAllowRawHtmlCopyrightMessagesnow defaults tofalse— the copyright footer messages no longer support raw HTML by default- Google search fallback removed — if
$wgDisableTextSearchis set, MediaWiki no longer shows a Google search form; configure$wgSearchForwardUrl(e.g.'https://duckduckgo.com/?q=$1') instead - "Special pages" toolbox link removed — if you relied on it, add it to
MediaWiki:Sidebarexplicitly $wgEnotifImpersonaland$wgEnotifMaxRecipsdeprecated$wgResourceLoaderUseObjectCacheForDepsremoved (always enabled now), and$wgBaseDirectoryremoved in favour ofMW_INSTALL_PATHexception-jsonlog channel removed — use the PSR-3exceptionchannel- New
uppercase-ckbcollation;uca-xx-ckbdeprecated
Upgrade notes
Running the update script (php maintenance/run.php update) is mandatory because of the Interwiki merge and schema changes. After upgrading, check the logs for usage of removed globals — MediaWiki logs these, and the FeatureShutdown service helps you stage the deprecation. If you maintain a custom skin, test it against the new heading DOM early, since the legacy fallback has a hard removal date.
1.44 is the release to catch up on homework: the removals are the announced end of a long deprecation cycle, and the additions — notifications framework, bundled CheckUser and TemplateStyles, OpenSearch support — are quietly significant. The release page and the Wikimedia tech blog highlights are the two best references when planning an upgrade.