SECURITY: Do not reveal if user exists during login failure
[lhc/web/wiklou.git] / RELEASE-NOTES-1.31
1 == MediaWiki 1.31 ==
2
3 THIS IS NOT A RELEASE YET
4
5 MediaWiki 1.31 is an alpha-quality branch and is not recommended for use in
6 production.
7
8 === Configuration changes in 1.31 ===
9 * $wgEnableAPI and $wgEnableWriteAPI are now deprecated and will be removed in
10 a future version. The API is now considered to be stable, secure and
11 essential.
12 * $wgUsejQueryThree was removed, as it is now the default. This was documented as a
13 temporary variable during the migration period, deprecated since 1.29.
14 * $wgLogoHD has been updated to support svg images and uses $wgLogo where
15 possible for fallback images such as png.
16 * (T44246) $wgFilterLogTypes will no longer ignore 'patrol' when user does
17 not have the right to mark things patrolled.
18 * …
19
20 === New features in 1.31 ===
21 * Wikimedia\Rdbms\IDatabase->select() and similar methods now support
22 joins with parentheses for grouping.
23 * As a first pass in standardizing dialog boxes across the MediaWiki product,
24 Html class now provides helper methods for messageBox, successBox, errorBox and
25 warningBox generation.
26
27 === External library changes in 1.31 ===
28
29 ==== Upgraded external libraries ====
30 * Updated dev dependancy phpunit/phpunit from v4.8.35 to v4.8.36.
31
32 ==== New external libraries ====
33 * …
34
35 ==== Removed and replaced external libraries ====
36 * (T17845) The deprecated 'jquery.badge' module was removed.
37 * The deprecated 'jquery.autoEllipsis' module was removed. Use the CSS
38 text-overflow property instead.
39 * The deprecated 'jquery.placeholder' module was removed.
40 * The deprecated 'jquery.appear' module was removed. Use the
41 'mediawiki.viewport' module instead.
42 * The deprecated 'mediawiki.widgets.CategorySelector' module alias was removed.
43 Use the 'mediawiki.widgets.CategoryMultiselectWidget' module directly instead.
44 * …
45
46 === Bug fixes in 1.31 ===
47 * (T90902) Non-breaking space in header ID breaks anchor
48 * …
49
50 === Action API changes in 1.31 ===
51 * …
52
53 === Action API internal changes in 1.31 ===
54 * …
55
56 === Languages updated in 1.31 ===
57 MediaWiki supports over 350 languages. Many localisations are updated
58 regularly. Below only new and removed languages are listed, as well as
59 changes to languages because of Phabricator reports.
60
61 * (T180052) Mirandese (mwl) now supports gendered NS_USER/NS_USER_TALK namespaces.
62
63 === Other changes in 1.31 ===
64 * MessageBlobStore::insertMessageBlob() (deprecated in 1.27) was removed.
65 * The global function wfBCP47 was renamed to LanguageCode::bcp47.
66 * The global function wfBCP47 is now deprecated.
67 * The global function wfCountDown() is now deprecated in favor of
68 Maintenance::countDown()
69 * The OutputPage class constructor now requires a context parameter,
70 (instantiating without context was deprecated in 1.18)
71 * mw.page (deprecated in 1.30) was removed.
72 * Article::getLastPurgeTimestamp(), WikiPage::getLastPurgeTimestamp(), and the
73 related WikiPage::PURGE_* constants, deprecated in 1.29, were removed.
74 * The Article::selectFields(), Article::onArticleCreate(),
75 Article::onArticleDelete(), and Article::onArticleEdit() methods, deprecated
76 in 1.24, were removed.
77 * Installer::locateExecutable() and Installer::locateExecutableInDefaultPaths()
78 were removed, use ExecutableFinder::findInDefaultPaths() instead.
79 * Several methods for returning lists of fields to select from the database
80 have been deprecated in favor of similar methods that also return the tables
81 to select from and the join conditions for those tables.
82 * Block::selectFields() → Block::getQueryInfo()
83 * RecentChange::selectFields() → RecentChange::getQueryInfo()
84 * ArchivedFile::selectFields() → ArchivedFile::getQueryInfo()
85 * LocalFile::selectFields() → LocalFile::getQueryInfo()
86 * LocalFile::getCacheFields() with a prefix no longer works
87 * LocalFile::getLazyCacheFields() with a prefix no longer works
88 * OldLocalFile::selectFields() → OldLocalFile::getQueryInfo()
89 * RecentChange::selectFields() → RecentChange::getQueryInfo()
90 * Revision::userJoinCond() → Revision::getQueryInfo( [ 'user' ] )
91 * Revision::selectUserFields() → Revision::getQueryInfo( [ 'user' ] )
92 * Revision::pageJoinCond() → Revision::getQueryInfo( [ 'page' ] )
93 * Revision::selectPageFields() → Revision::getQueryInfo( [ 'page' ] )
94 * Revision::selectTextFields() → Revision::getQueryInfo( [ 'text' ] )
95 * Revision::selectFields() → Revision::getQueryInfo()
96 * Revision::selectArchiveFields() → Revision::getArchiveQueryInfo()
97 * User::selectFields() → User::getQueryInfo()
98 * WikiPage::selectFields() → WikiPage::getQueryInfo()
99 * Due to significant refactoring, method ContribsPager::getUserCond() that had
100 no access restriction has been removed.
101 * Revision::setUserIdAndName() was deprecated.
102
103 == Compatibility ==
104 MediaWiki 1.31 requires PHP 5.5.9 or later. There is experimental support for
105 HHVM 3.6.5 or later.
106
107 MySQL/MariaDB is the recommended DBMS. PostgreSQL or SQLite can also be used,
108 but support for them is somewhat less mature. There is experimental support for
109 Oracle and Microsoft SQL Server.
110
111 The supported versions are:
112
113 * MySQL 5.0.3 or later
114 * PostgreSQL 8.3 or later
115 * SQLite 3.3.7 or later
116 * Oracle 9.0.1 or later
117 * Microsoft SQL Server 2005 (9.00.1399)
118
119 == Upgrading ==
120 1.31 has several database changes since 1.30, and will not work without schema
121 updates. Note that due to changes to some very large tables like the revision
122 table, the schema update may take quite long (minutes on a medium sized site,
123 many hours on a large site).
124
125 Don't forget to always back up your database before upgrading!
126
127 See the file UPGRADE for more detailed upgrade instructions, including
128 important information when upgrading from versions prior to 1.11.
129
130 For notes on 1.30.x and older releases, see HISTORY.
131
132 == Online documentation ==
133 Documentation for both end-users and site administrators is available on
134 MediaWiki.org, and is covered under the GNU Free Documentation License (except
135 for pages that explicitly state that their contents are in the public domain):
136
137 https://www.mediawiki.org/wiki/Special:MyLanguage/Documentation
138
139 == Mailing list ==
140 A mailing list is available for MediaWiki user support and discussion:
141
142 https://lists.wikimedia.org/mailman/listinfo/mediawiki-l
143
144 A low-traffic announcements-only list is also available:
145
146 https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce
147
148 It's highly recommended that you sign up for one of these lists if you're
149 going to run a public MediaWiki, so you can be notified of security fixes.
150
151 == IRC help ==
152 There's usually someone online in #mediawiki on irc.freenode.net.