You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
304 lines
13 KiB
Plaintext
304 lines
13 KiB
Plaintext
= MediaWiki 1.44 =
|
|
|
|
== MediaWiki 1.44.0-PRERELEASE ==
|
|
|
|
THIS IS NOT A RELEASE YET
|
|
|
|
MediaWiki 1.44 is an alpha-quality development branch, and is not recommended
|
|
for use in production.
|
|
|
|
== Upgrading notes for 1.44 ==
|
|
Don't forget to always back up your database before upgrading!
|
|
|
|
See the file UPGRADE for more detailed per-version upgrade instructions from the
|
|
oldest supported upgrading version, MediaWiki 1.35.
|
|
|
|
Some specific notes for MediaWiki 1.44 upgrades are below:
|
|
|
|
* …
|
|
|
|
For notes on 1.43.x and older releases, see HISTORY.
|
|
|
|
=== Configuration changes for system administrators in 1.44 ===
|
|
|
|
* (T382987) The default value of 'http.dnsbl.sorbs.net.' in $wgDnsBlacklistUrls
|
|
has been removed. This is because sorbs.net have stopped providing their
|
|
services. This means that if you have $wgEnableDnsBlacklist set to true, it
|
|
will no longer provide any value unless you add other servers to
|
|
$wgDnsBlacklistUrls.
|
|
* …
|
|
|
|
==== New configuration ====
|
|
|
|
* (T377829) $wgAutopromoteOnceRCExcludedGroups - Defaults to an empty list, can
|
|
be used to define a denylist of user group names. One-shot autopromotions
|
|
into these groups will never result in an RC entry, even if
|
|
$wgAutopromoteOnceLogInRC is true, as long as they were the only new groups
|
|
the user was autopromoted into.
|
|
* …
|
|
|
|
==== Changed configuration ====
|
|
|
|
* (T13555) $wgParserEnableLegacyHeadingDOM now defaults to `false`.
|
|
You can set it to `true` to temporarily restore the legacy HTML markup
|
|
for wikitext headings in the output from the Parser, in case you find
|
|
that your wiki's content or an extension is incompatible with the new markup.
|
|
More information: https://www.mediawiki.org/wiki/Heading_HTML_changes
|
|
This option will be removed in a future release.
|
|
* (T382987) $wgDnsBlacklistUrls now defaults to an empty array. See the comment
|
|
in the "Configuration changes for system administrators" section above.
|
|
|
|
==== Removed configuration ====
|
|
|
|
* wgResourceLoaderUseObjectCacheForDeps, deprecated in 1.43, has been removed.
|
|
It is now always enabled (T343492).
|
|
* wgBaseDirectory, unused, has been removed in favour of MW_INSTALL_PATH.
|
|
If a variable value is needed, inject an optional parameter instead.
|
|
* …
|
|
|
|
=== New user-facing features in 1.44 ===
|
|
|
|
* (T363538, T204792) New parser functions {{#interlanguagelink:prefix|title}}
|
|
and {{#interwikilink:prefix|title|caption}} to unambiguously create
|
|
interlanguage and interwiki links, respectively, even when the "prefix"
|
|
might conflict with a namespace on the local wiki.
|
|
* (T326057) Attempting to create a redirect to a nonexistent page will now
|
|
result in a warning.
|
|
* (T33951) The Interwiki extension has been moved to MediaWiki core. It is now
|
|
possible to view and edit the interwiki table without installing an extension.
|
|
$wgInterwikiCentralDB and $wgInterwikiCentralInterlanguageDB have been
|
|
removed, use $wgVirtualDomainsMapping['virtual-interwiki'] and
|
|
$wgVirtualDomainsMapping['virtual-interwiki-interlanguage'] instead.
|
|
$wgInterwikiViewOnly has been removed, (un)assign "interwiki" right instead.
|
|
* (T302140) Rollbacked edits are marked as manually patrolled instead of
|
|
auto-patrolled since the rollback action was a manual patrol of the edit.
|
|
* (T56145) Introduces a new tag 'mw-recreated' to note edits which create pages
|
|
that have been previously deleted by having an associated deletion log entry.
|
|
This does not consider deletion log entries that were suppressed.
|
|
* (T326056) Attempting to create a redirect to another redirect will now
|
|
result in a warning.
|
|
* …
|
|
|
|
=== New features for sysadmins in 1.44 ===
|
|
|
|
* (T267477) Users with rename userright can now rename themselves through
|
|
[[Special:RenameUser]].
|
|
* …
|
|
|
|
=== New developer features in 1.44 ===
|
|
|
|
* The AuthenticationAttemptThrottled hook was added.
|
|
* The CodexTablePager class was added.
|
|
* UserFactory now has newFromNameOrIp() method to quickly create User object
|
|
for either an IP a named user.
|
|
* The ApiQueryCheckCanExecute hook was added.
|
|
* The ChangesListInsertLogEntry hook was added.
|
|
* …
|
|
|
|
=== External library changes in 1.44 ===
|
|
|
|
==== New external libraries ====
|
|
|
|
* …
|
|
|
|
===== New development-only external libraries =====
|
|
|
|
* …
|
|
|
|
==== Changed external libraries ====
|
|
|
|
* Updated codex, codex-design-tokens and codex-icons
|
|
from v1.14.0 to v1.19.1.
|
|
* Updated wikimedia/bcp-47-code from 2.0.0 to 2.0.1.
|
|
* Updated wikimedia/shellbox from 4.1.1 to 4.1.2.
|
|
* Updated wikimedia/timestamp from 4.1.1 to 4.2.0.
|
|
* Updated OOUI from v0.51.2 to v0.51.4.
|
|
* Updated vue from 3.4.27 to 3.5.13.
|
|
* …
|
|
|
|
===== Changed development-only external libraries =====
|
|
* Updated nikic/php-parser from ^4.10.2 to ^5.3.1.
|
|
* Updated mediawiki/mediawiki-phan-config from 0.14.0 to 0.15.0.
|
|
* Updated phpunit/phpunit from 9.6.19 to 9.6.21.
|
|
* Updated stylelint-config-wikimedia from v0.17.2 to v0.18.0.
|
|
* …
|
|
|
|
==== Removed external libraries ====
|
|
|
|
* …
|
|
|
|
=== Bug fixes in 1.44 ===
|
|
|
|
* …
|
|
|
|
=== Action API changes in 1.44 ===
|
|
|
|
* The list=blocks API now accepts a `parsedreason` parameter to get the block
|
|
reason as parsed HTML.
|
|
* …
|
|
|
|
=== Action API internal changes in 1.44 ===
|
|
|
|
* …
|
|
|
|
=== Languages updated in 1.44 ===
|
|
MediaWiki supports over 350 languages. Many localisations are updated regularly.
|
|
Below only new and removed languages are listed, as well as changes to languages
|
|
because of Phabricator reports.
|
|
|
|
* (T379137) Added language support for Hunde (hke).
|
|
* (T381463) Added language support for Coptic (cop).
|
|
* (T381894) Added language support for Fur (fvr).
|
|
* (T379137) Added language support for Mindong (Traditional Han script)
|
|
(cdo-hant).
|
|
* (T379137) Added language support for Mindong (Latin script) (cdo-latn).
|
|
* (T384234) Added language support for Wali (wlx).
|
|
* (T384245) Added language support for Lampung Api (ljp).
|
|
* …
|
|
|
|
=== Breaking changes in 1.44 ===
|
|
|
|
* In StatusValue::replaceMessage(), ::hasMessage() and ::hasMessagesExcept()
|
|
passing MessageSpecifier or MessageValue as $source, deprecated in 1.43,
|
|
is no longer allowed.
|
|
* StatusValue will no longer accept errors given as a MessageSpecifier
|
|
combined with a parameters array. This was deprecated in 1.43.
|
|
* The methods MessageValue::objectParams(), Message::objectParams()
|
|
and Message::objectParam(), deprecated in 1.43, have been removed.
|
|
* The UserGroupMembershipParam class, deprecated in 1.43, has been removed.
|
|
* The ParamType::OBJECT constant, deprecated in 1.43, has been removed.
|
|
* The MediaWiki\Message\Converter class, deprecated in 1.43, has been removed.
|
|
Use MessageValue::newFromSpecifier or Message::newFromSpecifier
|
|
instead (T358779).
|
|
* Return type declarations were added to methods in `includes/libs/Message`,
|
|
specifically in the `MessageSpecifier`, `ITextFormatter`, and
|
|
`IMessageFormatterFactory` interfaces. This update enhances type safety but
|
|
may require updates in any classes implementing these interfaces, including
|
|
external extensions. Extensions such as Translate, Flow, and ReadingLists
|
|
require compatibility patches to support these changes.
|
|
* IDatabase::LB_TRX_ROUND_ID was removed and IDatabase::LB_READ_ONLY_REASON
|
|
was marked as an internal constant.
|
|
* IDatabase::onAtomicSectionCancel() has been removed without deprecation
|
|
as it's completely unused.
|
|
* ISQLPlatform::tableNames(), deprecated since 1.39, has been removed.
|
|
* The Wikimedia\LightweightObjectStore\ExpirationAwareness interface is now
|
|
considered internal. Use BagOStuff to access TTL constants instead.
|
|
* The ParsoidOutputAccess class marked @unstable from creation and
|
|
deprecated with all of its methods in 1.43, has been removed.
|
|
* (T382030) MediaWiki core database schema and schema changes have been moved
|
|
to a new top-level sql/ directory. This should only affect code directly
|
|
referencing the old paths.
|
|
* The HtmlToContentTransform::setMetrics() and
|
|
HtmlInputTransformHelper::setMetrics() methods now require a StatsFactory
|
|
argument. Passing a StatsdDataFactoryInterface was deprecated in 1.43.
|
|
* The method ParserOptions::setupFakeRevision has been marked internal. It
|
|
will remain backwards compatible in 1.44 but may change without notice in
|
|
1.45 or later.
|
|
* The Less mixin .column-break-after-avoid(), deprecated in 1.43, has been
|
|
removed. Use just the CSS rule `break-after: avoid-column;` instead now.
|
|
* ApiBase::errorArrayToStatus(), deprecated in 1.43, has been removed.
|
|
* ZipDirectoryReader has been moved to the Wikimedia\Mime library.
|
|
No callers outside that library are known.
|
|
* The MediaWiki\Config\MutableConfig interface now extends
|
|
MediaWiki\Config\Config. Implementing MutableConfig without implementing
|
|
Config is no longer possible.
|
|
* The hook OutputPageMakeCategoryLinks, deprecated in 1.43, has been removed.
|
|
* The methods Skin::getFooterIcons and ::makeFooterIcon are final and
|
|
overriding is no longer supported.
|
|
* DatabaseBlock::getQueryInfo and ::getRangeCond, deprecated since 1.43, have
|
|
been removed.
|
|
* The $schema parameters to DatabaseBlockStore::getQueryInfo() and
|
|
::getRangeCond() have been removed. They were documented as temporary
|
|
migration support parameters. Support for ipb_* field aliases in
|
|
DatabaseBlockStore::newFromRow(), which was meant to support the use of
|
|
$schema, has been removed.
|
|
* …
|
|
|
|
=== Deprecations in 1.44 ===
|
|
|
|
* Various static methods on ChangeTags, deprecated since 1.41, each now emit
|
|
deprecation warnings. Use service access to the ChangeTagsStore instead:
|
|
addTags(), defineTag(), deleteTagEverywhere(), getDisplayTableName(),
|
|
getSoftwareTags(), getTags(), getTagsWithData(), listDefinedTags(),
|
|
listExplicitlyDefinedTags(), listSoftwareActivatedTags(),
|
|
listSoftwareDefinedTags(), makeTagSummarySubquery(), modifyDisplayQuery(),
|
|
purgeTagCacheAll(), tagUsageStatistics(), and updateTags().
|
|
* WikiPage::doEditUpdates(), deprecated since 1.32, is now emitting warnings.
|
|
Use DerivedPageDataUpdater::doUpdates() instead.
|
|
* IDatabase::setTransactionListener() is now deprecated without replacement.
|
|
* ILBFactory::setWaitForReplicationListener() is now deprecated without
|
|
replacement.
|
|
* Maintenance::beginTransaction(), Maintenance::commitTransaction(),
|
|
Maintenance::rollbackTransaction(), and Maintenance::waitForReplication()
|
|
are now deprecated. Use Maintenance::*TransactionRound() instead.
|
|
* The ReverseArrayIterator class, unused since 1.32, has been deprecated.
|
|
* LinksUpdate::getImages() has been deprecated, like ParserOutput::getImages().
|
|
Instead, use ParserOutput::getLinkList( ParserOutputLinkTypes::MEDIA ).
|
|
* ResourceLoader::makeConfigSetScript() is now deprecated. Consider using
|
|
package files instead. Or, you can return "mw.config.set()" combined with
|
|
RL\Context::encodeJson, if available. If not, use FormatJson::encode.
|
|
* BlockManager::getUserBlock(), deprecated since 1.42, now emits warnings.
|
|
* DatabaseBlock methods newFromRow(), delete(), insert(), update(),
|
|
doAutoblock(), isExemptedFromAutoblocks(), doAutoblock(), updateTimestamp(),
|
|
newFromTarget(), newListFromTarget() and getBlocksForIPList() are now
|
|
deprecated and emit deprecation warnings. Use the corresponding method in
|
|
DatabaseBlockStore, except for getBlocksForIPList() which is in BlockManager.
|
|
* The parameter $default in WebRequest::getRawVal(), deprecated since 1.43,
|
|
is now emitting warnings.
|
|
* …
|
|
|
|
=== Other changes in 1.44 ===
|
|
* The ArticleProtect and ArticleProtectComplete hooks are now called when
|
|
WikiPage::doUpdateRestrictions is called to protect a non-existing
|
|
title.
|
|
* Introduce ISearchResultSet::isApproximateTotalHits() (defaults to false
|
|
in BaseSearchResultSet) to let SearchEngine implementations run optimizations
|
|
that might lead to innacurate computation of the exact number of pages
|
|
matching the search query.
|
|
* …
|
|
|
|
== Compatibility ==
|
|
|
|
MediaWiki 1.44 requires PHP 8.1.0 or later and the following PHP extensions:
|
|
|
|
* ctype
|
|
* dom
|
|
* fileinfo
|
|
* iconv
|
|
* intl
|
|
* json
|
|
* mbstring
|
|
* xml
|
|
|
|
MariaDB is the recommended database software. MySQL, PostgreSQL, or SQLite can
|
|
be used instead, but support for them is somewhat less mature.
|
|
|
|
The supported versions are:
|
|
|
|
* MariaDB 10.3 or higher
|
|
* MySQL 5.7.0 or higher
|
|
* PostgreSQL 10 or later
|
|
* SQLite 3.8.0 or later
|
|
|
|
== Online documentation ==
|
|
Documentation for both end-users and site administrators is available on
|
|
MediaWiki.org, and is covered under the GNU Free Documentation License (except
|
|
for pages that explicitly state that their contents are in the public domain):
|
|
|
|
<https://www.mediawiki.org/wiki/Special:MyLanguage/Documentation>
|
|
|
|
== Mailing list ==
|
|
A mailing list is available for MediaWiki user support and discussion:
|
|
|
|
<https://lists.wikimedia.org/postorius/lists/mediawiki-l.lists.wikimedia.org/>
|
|
|
|
A low-traffic announcements-only list is also available:
|
|
|
|
<https://lists.wikimedia.org/postorius/lists/mediawiki-announce.lists.wikimedia.org/>
|
|
|
|
It's highly recommended that you sign up for one of these lists if you're
|
|
going to run a public MediaWiki, so you can be notified of security fixes.
|
|
|
|
== IRC help ==
|
|
There's usually someone online in #mediawiki on irc.libera.chat.
|