Merge "Add a message to localize strings like "2×" and use it in enhanced RC"
[lhc/web/wiklou.git] / RELEASE-NOTES-1.30
1 == MediaWiki 1.30 ==
2
3 THIS IS NOT A RELEASE YET
4
5 MediaWiki 1.30 is an alpha-quality branch and is not recommended for use in
6 production.
7
8 === Configuration changes in 1.30 ===
9 * The C.UTF-8 locale should be used for $wgShellLocale, if available, to avoid
10 unexpected behavior when things use local-sensitive string comparisons. For
11 example, Scribunto considers "bar" < "Foo" in most locales since it ignores
12 case.
13 * $wgShellLocale now affects LC_ALL rather than only LC_CTYPE. See
14 documentation of $wgShellLocale for details.
15 * $wgJobClasses may now specify callback functions
16 as an alternative to plain class names.
17 This is intended for extensions that want control
18 over the instantiation of their jobs,
19 to allow for proper dependency injection.
20 * $wgResourceModules may now specify callback functions as an alternative
21 to plain class names, using the 'factory' key in the module description
22 array. This allows dependency injection to be used for ResourceLoader modules.
23 * $wgExceptionHooks has been removed.
24 * $wgShellLocale is now applied for all requests. wfInitShellLocale() is
25 deprecated and a no-op, as it is no longer needed.
26 * WikiPage::getParserOutput() will now throw an exception if passed
27 ParserOptions would pollute the parser cache. Callers should use
28 WikiPage::makeParserOptions() to create the ParserOptions object and only
29 change options that affect the parser cache key.
30 * (T45547) $wgUsePigLatinVariant added (off by default).
31
32 === New features in 1.30 ===
33 * (T37247) Output from Parser::parse() will now be wrapped in a div with
34 class="mw-parser-output" by default. This may be changed or disabled using
35 ParserOptions::setWrapOutputClass().
36 * Added 'ChangeTagsAllowedAdd' hook, enabling extensions to allow software-
37 specific tags to be added by users.
38 * Added a 'ParserOptionsRegister' hook to allow extensions to register
39 additional parser options.
40 * (T45547) Included Pig Latin, a language game in English, as a
41 LanguageConverter variant. This allows English-speaking developers
42 to develop and test LanguageConverter more easily. Pig Latin can be
43 enabled by setting $wgUsePigLatinVariant to true.
44
45 === Languages updated in 1.30 ===
46
47 * Support for kbp (Kabɩyɛ / Kabiyè) was added.
48
49 === External library changes in 1.30 ===
50
51 ==== Upgraded external libraries ====
52 * …
53
54 ==== New external libraries ====
55 * The class \TestingAccessWrapper has been moved to the external library
56 wikimedia/testing-access-wrapper and renamed \Wikimedia\TestingAccessWrapper.
57
58 ==== Removed and replaced external libraries ====
59 * …
60
61 === Bug fixes in 1.30 ===
62 * (T151633) Ordered list items use now Devanagari digits in Nepalese
63 (thanks to Sfic)
64
65 === Action API changes in 1.30 ===
66 * (T37247) action=parse output will be wrapped in a div with
67 class="mw-parser-output" by default. This may be changed or disabled using
68 the new 'wrapoutputclass' parameter.
69 * When errorformat is not 'bc', abort reasons from action=login will be
70 formatted as specified by the error formatter parameters.
71 * action=compare can now handle arbitrary text, deleted revisions, and
72 returning users and edit comments.
73 * (T164106) The 'rvdifftotext', 'rvdifftotextpst', 'rvdiffto',
74 'rvexpandtemplates', 'rvgeneratexml', 'rvparse', and 'rvprop=parsetree'
75 parameters to prop=revisions are deprecated, as are the similarly named
76 parameters to prop=deletedrevisions, list=allrevisions, and
77 list=alldeletedrevisions. Use action=compare, action=parse, or
78 action=expandtemplates instead.
79
80 === Action API internal changes in 1.30 ===
81 * …
82
83 === Languages updated in 1.30 ===
84 MediaWiki supports over 350 languages. Many localisations are updated
85 regularly. Below only new and removed languages are listed, as well as
86 changes to languages because of Phabricator reports.
87
88 * …
89
90 ==== Pig Latin added ====
91 * (T45547) Added Pig Latin, a made-up English variant (en-x-piglatin),
92 for easier variant development and testing. Disabled by default. It can be
93 enabled by setting $wgUsePigLatinVariant to true.
94
95 === Other changes in 1.30 ===
96 * The use of an associative array for $wgProxyList, where the IP address is in
97 the key instead of the value, is deprecated (e.g. [ '127.0.0.1' => 'value' ]).
98 Please convert these arrays to indexed/sequential ones (e.g. [ '127.0.0.1' ]).
99 * mw.user.bucket (deprecated in 1.23) was removed.
100 * LoadBalancer::getServerInfo() and LoadBalancer::setServerInfo() are
101 deprecated. There are no known callers.
102 * File::getStreamHeaders() was deprecated.
103 * MediaHandler::getStreamHeaders() was deprecated.
104 * The ExtractThumbParameters hook (deprecated in 1.21) was removed.
105 * The OutputPage::addParserOutputNoText and ::getHeadLinks methods (both
106 deprecated in 1.24) were removed.
107 * wfMemcKey() and wfGlobalCacheKey() were deprecated. BagOStuff::makeKey() and
108 BagOStuff::makeGlobalKey() should be used instead.
109 * (T146304) Preprocessor handling of LanguageConverter markup has been improved.
110 As a result of the new uniform handling, '-{' may need to be escaped
111 (for example, as '-<nowiki/>{') where it occurs inside template arguments
112 or wikilinks.
113 * (T163966) Page moves are now counted as edits for the purposes of
114 autopromotion, i.e., they increment the user_editcount field in the database.
115 * Two new hooks, LogEventsListLineEnding and NewPagesLineEnding were added for
116 manipulating Special:Log and Special:NewPages lines.
117 * The OldChangesListRecentChangesLine, EnhancedChangesListModifyLineData,
118 PageHistoryLineEnding, ContributionsLineEnding and DeletedContributionsLineEnding
119 hooks have an additional parameter, for manipulating HTML data attributes of
120 RC/history lines. EnhancedChangesListModifyBlockLineData can do that via the
121 $data['attribs'] subarray.
122 * (T130632) The OutputPage::enableTOC() method was removed.
123
124 == Compatibility ==
125 MediaWiki 1.30 requires PHP 5.5.9 or later. There is experimental support for
126 HHVM 3.6.5 or later.
127
128 MySQL/MariaDB is the recommended DBMS. PostgreSQL or SQLite can also be used,
129 but support for them is somewhat less mature. There is experimental support for
130 Oracle and Microsoft SQL Server.
131
132 The supported versions are:
133
134 * MySQL 5.0.3 or later
135 * PostgreSQL 8.3 or later
136 * SQLite 3.3.7 or later
137 * Oracle 9.0.1 or later
138 * Microsoft SQL Server 2005 (9.00.1399)
139
140 == Upgrading ==
141 1.30 has several database changes since 1.29, and will not work without schema
142 updates. Note that due to changes to some very large tables like the revision
143 table, the schema update may take quite long (minutes on a medium sized site,
144 many hours on a large site).
145
146 Don't forget to always back up your database before upgrading!
147
148 See the file UPGRADE for more detailed upgrade instructions, including
149 important information when upgrading from versions prior to 1.11.
150
151 For notes on 1.29.x and older releases, see HISTORY.
152
153 == Online documentation ==
154 Documentation for both end-users and site administrators is available on
155 MediaWiki.org, and is covered under the GNU Free Documentation License (except
156 for pages that explicitly state that their contents are in the public domain):
157
158 https://www.mediawiki.org/wiki/Special:MyLanguage/Documentation
159
160 == Mailing list ==
161 A mailing list is available for MediaWiki user support and discussion:
162
163 https://lists.wikimedia.org/mailman/listinfo/mediawiki-l
164
165 A low-traffic announcements-only list is also available:
166
167 https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce
168
169 It's highly recommended that you sign up for one of these lists if you're
170 going to run a public MediaWiki, so you can be notified of security fixes.
171
172 == IRC help ==
173 There's usually someone online in #mediawiki on irc.freenode.net.