Partial normalisation of hooks.txt
[mediawiki.git] / RELEASE-NOTES-1.21
blob896dfe44fe9ebed0214fb4cab324fcce586c0aac
2 Security reminder: MediaWiki does not require PHP's register_globals. If you
3 have it on, turn it '''off''' if you can.
5 == MediaWiki 1.21 ==
7 THIS IS NOT A RELEASE YET
9 MediaWiki 1.21 is an alpha-quality branch and is not recommended for use in
10 production.
12 === Configuration changes in 1.21 ===
13 * (bug 29374) $wgVectorUseSimpleSearch is now enabled by default.
14 * Deprecated $wgAllowRealName is removed. Use $wgHiddenPrefs[] = 'realname'
15   instead.
16 * (bug 39957) Added $wgUnwatchedPageThreshold, specifying minimum count
17   of page watchers required for the number to be accessible to users
18   without the unwatchedpages permission.
20 === New features in 1.21 ===
21 * (bug 38110) Schema changes (adding or dropping tables, indicies and
22   fields) can be now be done separately from from other changes that
23   update.php makes.  This is useful in environments that use database
24   permissions to restrict schema changes but allow the DB user that
25   MediaWiki normally runs as to perform other changes that update.php
26   makes.  Schema changes can be run seperately.  See the file UPGRADE
27   for more information.
28 * (bug 34876) jquery.makeCollapsible has been improved in performance.
29 * Added ContentHandler facility to allow extensions to support other content
30   than wikitext. See docs/contenthandler.txt for details.
31 * New feature was developed for showing high-DPI thumbnails for high-DPI mobile
32   and desktop displays (configurable with $wgResponsiveImages).
33 * Added new backend to represent and store information about sites and site
34   specific configuration.
35 * jQuery upgraded from 1.8.2 to 1.8.3.
36 * jQuery UI upgraded from 1.8.23 to 1.8.24.
37 * Added separate fa_sha1 field to filearchive table. This allows sha1
38   searches with the api in miser mode for deleted files.
39 * Add initial and programmatic sorting for tablesorter.
40 * Add the event "sortEnd.tablesorter", triggered after sorting has completed.
41 * The Job system was refactored to allow for different backing stores for
42   queues as well as cross-wiki access to queues, among other things. The schema
43   for the DB queue was changed to support better concurrency and reduce
44   deadlock errors.
45 * Added ApiQueryORM class to facilitate creation of query API modules based on
46   tables that have a corresponding ORMTable class.
47 * (bug 40876) Icon for PSD (Adobe Photoshop) file types.
48 * (bug 40641) Implemented Special:Version/Credits with a list of contributors.
49 * (bug 7851) Implemented one-click AJAX patrolling.
50 * The <data>, <time>, <meta>, and <link> elements are allowed within WikiText
51   for use with Microdata.
52 * The HTML5 <mark> tag has been whitelisted.
53 * Added ParserCloned hook for when the Parser object is cloned.
54 * Added AlternateEditPreview hook to allow extensions to replace the page
55   preview from the edit page.
56 * Added EditPage::showStandardInputs:options hook to allow extensions to add
57   new fields to the "editOptions" area of the edit form.
58 * Upload stash DB schema altered to improve upload performance.
59 * The following global functions are now reporting deprecated warnings in
60   debug mode: wfMsg, wfMsgNoTrans, wfMsgForContent, wfMsgForContentNoTrans,
61   wfMsgReal, wfMsgGetKey, wfMsgHtml, wfMsgWikiHtml, wfMsgExt, wfEmptyMsg. Use
62   the Message class, or the global method wfMessage.
63 * Debug message emitted by wfDebugLog() will now be prefixed with the group
64   name when its logged to the default log file. That is the case whenever the
65   group has no key in wgDebugLogGroups, that will help triage the default log.
66 * (bug 24620) Add types to LogFormatter.
67 * jQuery JSON upgraded from 2.3 to 2.4.0.
68 * Added GetDoubleUnderscoreIDs hook, for modifying the list of magic words.
70 === Bug fixes in 1.21 ===
71 * (bug 40353) SpecialDoubleRedirect should support interwiki redirects.
72 * (bug 40352) fixDoubleRedirects.php should support interwiki redirects.
73 * (bug 9237) SpecialBrokenRedirect should not list interwiki redirects.
74 * (bug 34960) Drop unused fields rc_moved_to_ns and rc_moved_to_title from
75   recentchanges table.
76 * (bug 32951) Do not register internal externals with absolute protocol,
77   when server has relative protocol.
78 * (bug 39005) When purging proxies listed in $wgSquidServers using HTTP PURGE
79   method requests, we now send a Host header by default, for Varnish
80   compatibility. This also works with Squid in reverse-proxy mode. If you wish
81   to support Squid configured in forward-proxy mode, set
82   $wgSquidPurgeUseHostHeader to false.
83 * (bug 37020) sql.php with readline eats semicolon.
84 * (bug 11748) Properly handle optionally-closed HTML tags when Tidy is
85   disabled, and don't wrap HTML-syntax definition lists in paragraphs.
86 * (bug 41409) Diffs while editing an old revision should again diff against the
87   current revision.
88 * (bug 41494) Honor $wgLogExceptionBacktrace when logging non-API exceptions
89   caught during API execution.
90 * (bug 37963) Fixed loading process for user options.
91 * (bug 26995) Update filename field on Upload page after having sanitized it.
92 * (bug 41793) Contribution links to users with 0 edits on Special:ListUsers
93   didn't show up red.
94 * (bug 41899) A PHP notice no longer occurs when using the "rvcontinue" API
95   parameter.
96 * (bug 42036) Account creation emails now contain canonical (not
97   protocol-relative) URLs.
98 * (bug 41990) Fix regression: API edit with redirect=true and lacking
99   starttimestamp and basetimestamp should not cause an edit conflict.
100 * (bug 41706) EditPage: Preloaded page should be converted if possible and
101   needed.
102 * (bug 41886) Rowspans are no longer exploded by tablesorter until the table is
103   actually sorted.
104 * (bug 2865)  User interface HTML elements don't use lang attribute.
105   (completed the fix by adding the lang attribute to firstHeading).
106 * (bug 42173) Removed namespace prefixes on Special:UncategorizedCategories.
107 * (bug 36053) Log in "returnto" feature forgets query parameters if no
108   title parameter was specified.
109 * (bug 42410) API action=edit now returns correct timestamp for the new edit.
110 * (bug 14901) Email notification mistakes log action for new page creation.
111   Enotif no longer sends "page has been created" notifications for some log
112   actions. The following events now have a correct message: page creation,
113   deletion, move, restore (undeletion), change (edit).
114 * (bug 457) In the sidebar of Vector, CologneBlue, Monobook, and Monobook-based
115   skins, the heading levels have been changed from (variously per skin)
116   <h4>, <h5> or <h6> to only <h3>s, with a <h2> hidden heading above them.
117   If you are styling or scripting the headings in a custom way, this change
118   will require updates to your site's CSS or JS.
119 * (bug 41342) jquery.suggestions should cancel any active (async) fetches
120   before it triggers another fetch.
121 * (bug 42184) $wgUploadSizeWarning missing second variable.
122 * (bug 34581) removeUnusedAccounts.php maintenance script now ignores newuser
123   log when determining whether an account is used.
124 * (bug 43379) Gracefully fail if rev_len is unavailable for a revision on the
125   History page.
126 * (bug 42949) API no longer assumes all exceptions are MWException.
127 * (bug 41733) Hide "New user message" (.usermessage) element from printable view.
128 * (bug 39062) Special:Contributions will display changes that don't have
129   a parent id instead of just an empty bullet item.
130 * wfMerge() now works if $wgDiff3 contains spaces
132 === API changes in 1.21 ===
133 * prop=revisions can now report the contentmodel and contentformat.
134   See docs/contenthandler.txt.
135 * action=edit and action=parse now support contentmodel and contentformat
136   parameters to control the interpretation of page content.
137   See docs/contenthandler.txt for details.
138 * (bug 35693) ApiQueryImageInfo now suppresses errors when unserializing metadata.
139 * (bug 40111) Disable minor edit for page/section creation by API.
140 * (bug 41042) Revert change to action=parse&page=... behavior when the page
141   does not exist.
142 * (bug 27202) Add timestamp sort to list=allimages.
143 * (bug 43137) Don't return the sha1 of revisions through the API if the content is
144   revision-deleted.
145 * ApiQueryImageInfo now also returns imageinfo for redirects.
146 * list=alltransclusions added to enumerate every instance of page embedding
147 * list=alllinks & alltransclusions now allow both 'from' and 'continue' in
148   the same query. When both are present, 'from' is simply ignored.
149 * list=alllinks & alltransclusions now allow 'unique' in generators, to yield
150   a list of all link/template target pages instead of source pages.
151 * BREAKING CHANGE: list=logevents output format changed for details of some log
152   types. Specifically, details that were formerly reported under a key like
153   "4::foo" will now be reported under a key of simply "foo".
155 === Languages updated in 1.21 ===
157 MediaWiki supports over 350 languages. Many localisations are updated
158 regularly. Below only new and removed languages are listed, as well as
159 changes to languages because of Bugzilla reports.
161 * South Azerbaijani (azb) added.
162 * (bug 30040) Autonym for nds-nl is now 'Nedersaksies' (was 'Nedersaksisch').
163 * (bug 34977) Now formatted numbers in Spanish use space as separator
164   for thousands, as mandated by the Real Academia EspaƱola.
165 * (bug 35031) Kurdish formatted numbers now use period and comma
166   as separators for thousands and decimals respectively.
168 === Other changes in 1.21 ===
170 == Compatibility ==
172 MediaWiki 1.21 requires PHP 5.3.2 or later.
174 MySQL is the recommended DBMS. PostgreSQL or SQLite can also be used, but
175 support for them is somewhat less mature. There is experimental support for IBM
176 DB2 and Oracle.
178 The supported versions are:
180 * MySQL 5.0.2 or later
181 * PostgreSQL 8.3 or later
182 * SQLite 3.3.7 or later
183 * Oracle 9.0.1 or later
185 == Upgrading ==
187 1.21 has several database changes since 1.20, and will not work without schema
188 updates. Note that due to changes to some very large tables like the revision
189 table, the schema update may take quite long (minutes on a medium sized site,
190 many hours on a large site).
192 If upgrading from before 1.11, and you are using a wiki as a commons
193 repository, make sure that it is updated as well. Otherwise, errors may arise
194 due to database schema changes.
196 If upgrading from before 1.7, you may want to run refreshLinks.php to ensure
197 new database fields are filled with data.
199 If you are upgrading from MediaWiki 1.4.x or earlier, you should upgrade to
200 1.5 first. The upgrade script maintenance/upgrade1_5.php has been removed
201 with MediaWiki 1.21.
203 Don't forget to always back up your database before upgrading!
205 See the file UPGRADE for more detailed upgrade instructions.
207 For notes on 1.19.x and older releases, see HISTORY.
209 == Online documentation ==
211 Documentation for both end-users and site administrators is available on
212 MediaWiki.org, and is covered under the GNU Free Documentation License (except
213 for pages that explicitly state that their contents are in the public domain):
215         https://www.mediawiki.org/wiki/Documentation
217 == Mailing list ==
219 A mailing list is available for MediaWiki user support and discussion:
221         https://lists.wikimedia.org/mailman/listinfo/mediawiki-l
223 A low-traffic announcements-only list is also available:
225         https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce
227 It's highly recommended that you sign up for one of these lists if you're
228 going to run a public MediaWiki, so you can be notified of security fixes.
230 == IRC help ==
232 There's usually someone online in #mediawiki on irc.freenode.net.