-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathRELEASE-NOTES-1.42
307 lines (264 loc) · 11.2 KB
/
RELEASE-NOTES-1.42
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
= MediaWiki 1.42 =
== MediaWiki 1.42.0-PRERELEASE ==
THIS IS NOT A RELEASE YET
MediaWiki 1.42 is an alpha-quality development branch, and is not recommended
for use in production.
== Upgrading notes for 1.42 ==
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.42 upgrades are below:
* …
For notes on 1.41.x and older releases, see HISTORY.
=== Configuration changes for system administrators in 1.42 ===
* …
==== New configuration ====
* $wgMicroStashType: The object cache backend for the MicroStash service.
* $wgEditRecoveryExpiry: Number of seconds to keep edit recovery data
after the edit is stored.
* $wgDjvuUseBoxedCommand and $wgDjvuShell: A temporary flag to control whether
or not to use BoxedCommand when wrapping DejaVu rendering, and the command to
call if so.
* …
==== Changed configuration ====
* …
==== Removed configuration ====
* $wgDisableCookieCheck has been removed.
* $wgStatsCacheType has been removed. Set $wgMicroStashType instead.
* $wgJobSerialCommitThreshold has been removed without deprecation,
it wasn't used anywhere according to codesearch and any setups using this
config will perform just fine but might be less performant.
* …
=== New user-facing features in 1.42 ===
* …
=== New features for sysadmins in 1.42 ===
* …
=== New developer features in 1.42 ===
* (T326466) MediaWikiIntegrationTestCase's database and set-up code now avoids
using dynamic properties, which was causing deprecation warnings in PHP 8.2.
* (T13555) MediaWiki now includes styles that allow more accessible markup for
section headings. MediaWiki's own HTML output will be changed in the future.
More information: https://www.mediawiki.org/wiki/Heading_HTML_changes
* (T347347) The CLI installer accepts a "--with-developmentsettings" argument
to require the DevelopmentSettings.php file at install time.
* …
=== External library changes in 1.42 ===
==== New external libraries ====
* Added mediawiki/json-codec at v2.2.1
* …
===== New development-only external libraries =====
* …
==== Changed external libraries ====
* Updated OOUI from v0.48.1 to v0.48.2.
* Updated codex, codex-design-tokens and codex-icons
from v1.0.0 to v1.0.1.
* Updated wikimedia/minify from v2.5.1 to v2.7.0.
* Updated Vue from v3.2.37-compat to v3.3.9.
* …
===== Changed development-only external libraries =====
* Upgraded QUnit from v2.19.4 to v2.20.0.
* …
==== Removed external libraries ====
* …
=== Bug fixes in 1.42 ===
* …
=== Action API changes in 1.42 ===
* APIQueryTags now includes "software" in the "source" array for software
generated tags. Reliance on the "extension" entries in this array is now
deprecated, but they will remain for backwards compatibility.
* …
=== Action API internal changes in 1.42 ===
* …
=== Languages updated in 1.42 ===
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.
* (T268143) Language variant conversion has been removed for Kazakh.
* (T351874) Added language support for Komering (kge).
* (T351992) Added language support for Efik (efi).
* …
=== Breaking changes in 1.42 ===
* TitleArray, deprecated since 1.41, has been removed.
* UserRightsProxy, deprecated since 1.38, has been removed.
* UserLoginCompleteHook is always called with its $direct parameter set to
boolean true. The false case has been removed.
* MagicWord::load() has been marked @internal and may change in the future
without further notice.
* BagOStuff::setNewPreparedValues() now emits deprecation warnings.
* MediaWiki's virtualrest internal library has been removed in favor of the
HTTP library like: Guzzle, MultiHttpClient or MwHttpRequest.
* Several deprecated methods have been removed from the Content interface,
in favor of the respective methods in ContentHandlers. Callers should
use a more narrow interface like ContentRenderer or ContentTransformer
when possible. The following methods have been removed from Content:
- getParserOutput()
- preSaveTransform()
- preloadTransform()
- prepareSave()
* ParserOutput::setFlag() and ::getFlag(), deprecated in 1.38, were removed. You
should use ::setOutputFlag() and ::getOutputFlag() instead.
* PostgresUpdater::addPgEnumValue() unused everywhere, have been removed
without deprecation. Use of ENUM is highly discouraged.
* ILoadBalancer::getAnyOpenConnection() has been removed without deprecation,
use ::getConnection() instead.
* LanguageConverter's internal properties, all deprecated in 1.35 or 1.36, have
now had their deprecated property accessors dropped:
- mConvRuleTitle
- mUserVariant
- mHeaderVariant
- mMaxDepth
- mVarSeparatorPattern
- mLangObj
- mTablesLoaded
- mTables
- mVariants
- mMainLanguageCode
- mVariantFallbacks
- mFlags
- mVariantNames
- mDescCodeSep
- mDescVarSep
* OutputPage::addParserOutputText has been marked @internal since there are no
known users of it. Its old behavior has been deprecated and will change
in the future without further notice.
* MediaWikiIntegrationTestCase::$tablesUsed has been deprecated. The framework
now detects these automatically.
* Support for setting dynamic property on StatusValue object has been removed.
To pass your arbitrary data along the object, use StatusValue::statusData
property (which is always declared).
* The global function wfReportTime(), deprecated since 1.40, has been removed.
* The skin template parameter 'reporttime', deprecated since 1.41, has been
removed.
* WikiPage::getPageIsRedirectField(), deprecated since 1.41, has been removed.
* WikiPage::insertRedirect(), deprecated since 1.41, has been removed.
* Several methods in PageArchive, all deprecated in 1.38, have been removed:
- ::listRevisions()
- ::getRevisionRecordByTimestamp()
- ::getArchivedRevisionRecord()
- ::getPreviousRevisionRecord()
- ::getLastRevisionId()
- ::isDeleted()
- ::getFileStatus()
- ::getRevisionStatus()
* Database, DatabaseInstaller, DatabaseUpdater, DBPrimaryPos, ResultWrapper and
SQLPlatform are no longer stable to extend. It is not possible to define
database types in an extension.
* UserDef::PARAM_ALLOWED_USER_TYPES now differentiates between temporary account
usernames and user accounts. Any endpoints that want temp users to be
valid but were passing a name through will break. Temp users must now be
explicitly allowed.
* The Hooks class, a legacy wrapper for HooksContainer, has been removed. All of
its contents have been previously deprecated in 1.35 (or 1.41 for ::runner()):
- ::register()
- ::clear(),
- ::isRegistered()
- ::getHandlers()
- ::run()
- ::runWithoutAbort()
- ::runner()
* …
=== Deprecations in 1.42 ===
* (T166010) All PHP code in MediaWiki is slowly being moved to be in a class
namespace as appropriate, so that we can use PSR-4 auto-loading, which will
speed up general code loading of MediaWiki. The old global namespace class
names are being left behind as deprecated aliases.
In this release of MediaWiki, XYZ classes now have a namespace and XYZ do
not yet (XYZ% done, up from 63% in MediaWiki 1.41.0). The following have newly
been moved:
- MediaWiki\Deferred:
- AtomicSectionUpdate
- AutoCommitUpdate
- CdnCacheUpdate
- DataUpdate
- DeferrableCallback
- DeferrableUpdate
- DeferredUpdates
- DeferredUpdatesScope
- DeferredUpdatesScopeMediaWikiStack
- DeferredUpdatesScopeStack
- EnqueueableDataUpdate
- HtmlFileCacheUpdate
- JobQueueEnqueueUpdate
- MWCallableUpdate
- MergeableUpdate
- MessageCacheUpdate
- SearchUpdate
- SendPasswordResetEmailUpdate
- SiteStatsUpdate
- TransactionRoundAwareUpdate
- TransactionRoundDefiningUpdate
- UserEditCountInfo
- UserEditCountUpdate
* API modules using ApiBase::requirePostedParameters() must also override
mustBePosted() to return true.
* BlockManager::getUserBlock() was deprecated. Instead use
BlockManager::getBlock(), which expects the caller to do ipblock-exempt
checking.
* User::isBlocked(), ::isBlockedFromCreateAccount() and ::isBlockedFrom() now
emit deprecation warnings. They were deprecated since 1.34, 1.37 and 1.33
respectively.
* DatabaseBlock::newFromID() was deprecated and will emit deprecation warnings.
Instead use DatabaseBlockStore::newFromID().
* DatabaseBlock::getAutoblockExpiry() was deprecated without replacement.
* MagicWord::getId() has been deprecated.
* MagicWordFactory::getSubstIDs() has been deprecated.
* Status::setMessageLocalizer is deprecated. Callers that want to control the
localization of the Status object should obtain a StatusFormatter from
the StatusFormatterFactory.
* Vuex has been deprecated in favor of its successor, Pinia. Though deprecated,
Vuex 4 will remain accessible for the foreseeable future. Pinia should be used
for new projects.
* Title::getBrokenLinksFrom() has been deprecated.
* ParserOutput::setLanguageLinks() has been deprecated.
* ApiQueryBlockInfoTrait::addBlockInfoToQuery() will emit deprecation warnings
and will soon stop working due to schema changes. Instead use
addDeletedUserFilter() or getBlockDetailsForRows().
* DatabaseBlockStore::updateTimestamp() is now internal and should not be
called.
* The module `mediawiki.icon` has been deprecated. Use the Codex mixin instead
(T351681).
* Passing a WikiPage to PageEditStash::parseAndCache() has been deprecated.
Use PageUpdater instance.
* (T352284) Some user options-related classes were moved over to the existing
MediaWiki\User\Options namespace. Old names are deprecated and kept as
aliases for backwards-compatibility:
- DefaultOptionsLookup
- UserOptionsLookup
- UserOptionsManager
- StaticUserOptionsLookup
* …
=== Other changes in 1.42 ===
* Gallery: Image captions are no longer wrapped in <p> tags. Skins that
customize rendering for galleries may need to tweak their CSS.
* …
== Compatibility ==
MediaWiki 1.42 requires PHP 7.4.3 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/mailman/listinfo/mediawiki-l
A low-traffic announcements-only list is also available:
https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce
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.