(bug 14706) Added support for the Imagick PHP extension. Based on patch by Leslie...
[lhc/web/wiklou.git] / RELEASE-NOTES
1 = MediaWiki release notes =
2
3 Security reminder: MediaWiki does not require PHP's register_globals
4 setting since version 1.2.0. If you have it on, turn it *off* if you can.
5
6 == MediaWiki 1.18 ==
7
8 THIS IS NOT A RELEASE YET
9
10 MediaWiki is now using a "continuous integration" development model with
11 quarterly snapshot releases. The latest development code is always kept
12 "ready to run", and in fact runs our own sites on Wikipedia.
13
14 Release branches will continue to receive security updates for about a year
15 from first release, but nonessential bugfixes and feature developments
16 will be made on the development trunk and appear in the next quarterly release.
17
18 Those wishing to use the latest code instead of a branch release can obtain
19 it from source control: http://www.mediawiki.org/wiki/Download_from_SVN
20
21 === PHP 5.2 now required ==
22 In 1.18, the lowest supported version of MediaWiki is now 5.2.x. Please upgrade
23 PHP if you have not done so prior to upgrading MediaWiki.
24
25 === Configuration changes in 1.18 ===
26 * The WantedPages::getSQL hook has been removed and replaced with
27 WantedPages::getQueryInfo . This may break older extensions.
28 * $wgUseCombinedLoginLink controls whether to output a combined
29 login / create account link in the personal bar, or to output separate login
30 and create account links
31 * Skin names are no longer created based on a ucfirst version of the key in
32 $wgValidSkinNames but now the value. This means for
33 $wgValidSkinNames["monobook"] = "MonoBook"; the skin loader will no longer try
34 loading SkinMonobook and will instead load SkinMonoBook.
35 * The parser now attempts to output markers for editsection tokens and defer the
36 rendering of them so skin and language specific markup does not need to be
37 saved inside the parser cache note that this changes the cache key making all
38 old entries in the parser cache invalid you can set $wgUseEditSectionTokens to
39 false to disable this and keep your old parser cache entries.
40 Note that this feature should reduce parser cache fragmentation when enabled.
41 * $wgMaxUploadSize may now be set to an array to specify the upload size limit
42 per upload type.
43 * $wgAPICacheHelp added in 1.16 is now removed. To disable API help caching, set
44 $wgAPICacheHelpTimeout = 0;
45 * OutputPage::isUserJsAllowed() no longer returns false when scripts are allowed
46 by the page, but $wgAllowUserJs is set to false.
47 * Pure "Skin" class based custom skins are no longer supported, all custom skins
48 should be put together using SkinTemplate and BaseTemplate or QuickTemplate.
49 * The transliteration for passwords in case they were migrated from an old Latin-1
50 install (previous to MediaWiki 1.5) is now only done for wikis with
51 $wgLegacyEncoding set.
52 * (bug 27508) Add $wgSVGMetadataCutoff to limit the maximum amount of an svg we
53 look at when finding metadata to prevent excessive resource usage.
54 * $wgSysopUserBans and $wgSysopRangeBans (deprecated in 1.17) are now removed.
55 Use $wgBlockCIDRLimit = array( 'IPv4' => 43, 'IPv6' => 128 ) to achieve the same
56 functionality as $wgSysopRangeBans; you can use the BlockIp hook to replicate
57 $wgSysopUserBans functionality.
58
59 === New features in 1.18 ===
60 * Added a special page, disabled by default, that allows users with the
61 'disableaccount' privilege to permanently deactivate user accounts.
62 * (bug 8130) Query pages should limit to content namespaces, not just main
63 namespace
64 * Search suggestions (other than in the Vector skin) will now use the HTML5
65 datalist feature where supported, currently only Firefox 4.
66 * Special:Contribs now redirects to Special:Contributions
67 * (bug 6672) Images are now autorotated according to their EXIF orientation.
68 This only affects thumbnails; the source remains unrotated.
69 * (bug 25708) Update case mappings and normalization to Unicode 6.0.0
70 * New hook ArticlePrepareTextForEdit added, called when preparing text to be
71 saved.
72 * New parser option PreSaveTransform added, allows the pre-save transformation
73 to be selectively disabled.
74 * Alternative to $wgHooks implemented, using the new Hooks class.
75 * Add width parameter to Special:Filepath to allow getting the file path of a
76 thumbnail.
77 * (bug 26870) Add size to {{filepath:}}
78 * Upload warnings now show a thumbnail of the uploaded file
79 * Introduced the edittools-upload message, which will be inserted under the
80 upload form instead of edittools if available
81 * (bug 26285) Extensions will be automatically generated on upload if the user
82 specified a filename without extension.
83 * (bug 26851) Special:UserRights now allows to prefill the reason field
84 * New maintenance script to fix double redirects
85 (maintenance/fixDoubleRedirects.php)
86 * (bug 23315) New body classes to allow easier styling of special pages
87 * (bug 27159) Make email confirmation code expiration time configurable
88 * CSS/JS for each user group is imported from MediaWiki:Sysop.js,
89 MediaWiki:Autoconfirmed.css, etc.
90 * (bug 24230) Uploads of ZIP types, such as MS Office or OpenOffice can now be
91 safely enabled. A ZIP file reader was added which can scan a ZIP file for
92 potentially dangerous Java applets. This allows applets to be blocked
93 specifically, rather than all ZIP files being blocked.
94 * (bug 2429) Allow selection of associated namespace in recent changes
95 * (bug 26217) File size is now checked before uploading in HTML5 browsers
96 * CSS stylesheet MediaWiki:Noscript.css is now loaded for users with JavaScript
97 disabled (enclosed in the head in a <noscript> tag)
98 * Added UserGetLanguageObject hook to change the language used in $wgLang
99 * (bug 14645) When $wgMiserMode is on, expensive special pages are styled
100 differently (italicized by default) on Special:SpecialPages
101 * Added $wgAggregateStatsID, which allows UDP stats to be aggregated over
102 several wikis.
103 * When $wgAllowMicrodataAttributes is true, all itemtypes are allowed, not just
104 the three that were defined in the original specification.
105 * (bug 14706) Added support for the Imagick PHP extension.
106
107 === Bug fixes in 1.18 ===
108 * (bug 23119) WikiError class and subclasses are now marked as deprecated
109 * (bug 10871) Javascript and CSS pages in MediaWiki namespace are no longer
110 treated as wikitext on preview.
111 * (bug 22753) Output from update.php is more clear when things changed, entries
112 indicating nothing changed are now all prefixed by "..."
113 * Page existence is now not revealed (in the colour of the tabs) to users who
114 cannot read the page in question.
115 * (bug 19006) {{REVISIONUSER}} no longer acts like {{CURRENTUSER}} in some cases
116 * (bug 16019) $wgArticlePath = "/$1" no longer breaks API edit/watch actions
117 * (bug 18372) File types blacklisted by $wgFileBlacklist will no longer be shown
118 as "Permitted file types" on the upload form
119 * (bug 26379) importImages.php gives more descriptive error message on failure.
120 * (bug 26410) + signs are no longer treated as spaces in internal links if
121 link has a % sign in it.
122 * (bug 26412) Search results headers no longer show a bogus edit link.
123 * (bug 26540) Fixed wrong call to applyPatch in MysqlUpdater
124 * (bug 26574) Added 'upload' to $wgRestrictionTypes, allowing upload protected
125 pages to be queried via the API and Special:ProtectedPages, and allowing
126 disabling upload protection by removing it from $wgRestrictionTypes.
127 * If an edit summary exceeds 250 bytes and is truncated, add an ellipse
128 * (bug 26638) Database error pages display correctly in RTL languages
129 * (bug 26187) Confirmrecreate no longer parses the edit summary
130 * (bug 25506) Exception is thrown if OutputPage::parse is called inside a tag
131 hook, which would reset parser state
132 * (bug 26208) Mark directionality of some interlanguage links
133 * (bug 26034) Make the "View / Read" tab in content_navigation style tabs remain
134 selected when the action is "purge".
135 * (bug 14267) Support a MediaWiki:Mainpage-nstab override for the subject
136 namespace tab on the mainpage of a wiki.
137 * (bug 10158) Do not mention allowing others to contact you when the feature
138 is disabled ($wgEnableUserEmail=false)
139 * (bug 26733) Wrap initial table creation in transaction
140 * (bug 26729) Category pages should return 404 if they do not exist and have no
141 members.
142 * (bug 2585) Image pages should send 404 if no image, no shared image and no
143 description page.
144 * Custom editintro's using the editintro url parameter will no longer show
145 <noinclude> sections on pages they are included on.
146 * (bug 26449) Keep underlines from headings outside of tables and thumbs by
147 adding overflow:hidden to h1,h2,h3,h4,h5,h6 (also fixes editsection bunching).
148 * (bug 26708) Remove background-color:white from tables in Monobook and Vector.
149 * (bug 26781) {{PAGENAME}} and related parser functions escape their output
150 better.
151 * (bug 26716) Provide link to instructions for external editor related
152 preferences and add a comment to the ini control file explaining what is
153 going on.
154 * Trying to upload a file with no extension or with a disallowed MIME type now
155 gives the right message instead of complaining about a MIME/extension mismatch
156 * (bug 26809) Uploading files with multiple extensions where one of the
157 extensions is blacklisted now gives the proper extension in the error message.
158 * (bug 26961) Hide anon edits in watchlist preference now actually works.
159 * (bug 19751) Filesystem is now checked during image undeletion
160 * Send last modified headers for Special:Recentchanges when RC patrol is
161 enabled, but user cannot see rc patrol links.
162 * (bug 26548) ForeignAPIRepo (InstantCommons) now works with PDF files
163 and other multi-paged file formats.
164 * Files with a mime type that does not match the extension are now properly
165 thumbnailed
166 * (bug 27201) Special:WhatLinksHere output no longer contains duplicate IDs
167 * (bug 15905) Nostalgia skin could become more usable by including a Talk:
168 link at the top of the page
169 * (bug 27560) Search queries no longer fail in walloon language
170 * (bug 27679) Broken embedded files with special characters are no longer
171 double HTML escaped
172 * (bug 27700) The upload protection can now also be set for files that do not
173 exist.
174 * (bug 27763) Article::getParserOutput() no longer throws a fatal given when an
175 incorrect revision ID is passed.
176 * Trim the form field for uploading by url to remove extra spaces which could
177 cause confusing error messages.
178 * (bug 27854) Http::isValidURI is way too lax.
179 * Do not show enotifminoredits preference, if disabled by $wgEnotifMinorEdits.
180 * AbortLogin returning "ABORTED" now handled. Also allows message identifier
181 for "ABORTED" reason to be returned and displayed to user.
182
183 === API changes in 1.18 ===
184 * (bug 26339) Throw warning when truncating an overlarge API result
185 * (bug 14869) Add API module for accessing QueryPage-based special pages
186 * (bug 14020) API for Special:Unwatchedpages
187 * (bug 24287) Wrap API Help output at 100 characters
188 * Add a realname uiprop option to query=userinfo so a user's realname can be
189 extracted
190 * Add a &watchuser option to ApiBlock
191 * (bug 26541) Generator-ise ApiQueryRecentChanges
192 * action=parse now correctly returns an error for nonexistent pages
193 * (bug 25767) Add userrights properties to allusers and users query lists
194 * (bug 26558) list=allusers auprop=groups does not list groups a user is
195 automatically a member of
196 * (bug 26559) list=allusers auprop=rights does not match
197 list=users usprop=rights
198 * (bug 26560) On allusers if limit < total number of users, last user gets
199 duplicate
200 * (bug 25135) add "normalized" to action=parse
201 * (bug 26460) Add support for listing category members by category pageid
202 * (bug 26482) add a imimages param to prop=images
203 * (bug 26498) allow LinksUpdate with API
204 * (bug 26485) add a elextlinks param to prop=extlinks
205 * (bug 26483) add a iwtitles param to prop=iwlinks
206 * (bug 26484) add a lltitles param to prop=langlinks
207 * (bug 26480) add a pppageprops param to prop=pageprops
208 * (bug 26650) Remove $wgAPICacheHelp in favour of $wgAPICacheHelpTimeout
209 * (bug 24650) Fix API to work with categorylinks changes
210 * Expose list of skins in meta=siteinfo
211 * (bug 26548) Add iiurlparam param to query=imageinfo and query=stashimageinfo
212 * (bug 27205) aiprop=metadata and aiprop=parsedcomment need help text
213 * Add a amtitle param to meta=allmessages
214 * (bug 25832) query=allimages now outputs ns/title as well
215 * (bug 27199) Thumbnail urls can be fetched for old files as well
216 * (bug 27376) when using ApiBase::PARAM_TYPE => 'integer' without a min or
217 max value, api doesn't validate the input is actually an integer
218 * (bug 27479) API error when using both prop=pageprops and
219 prop=info&inprop=displaytitle
220 * (bug 27554) Update api information text to reflect change in bug 26125
221 * (bug 27611) list=blocks: Use ipb_by_text instead of join with user table
222 * (bug 27616) Add userid of blocked user and blocker to list=blocks
223 * (bug 27688) Simplify queries to list user block information
224 * (bug 27708) list=users does not have a property to return user id
225 * (bug 27715) imageinfo didn't respect revdelete
226 * (bug 27862) Useremail module didn't properly return success on success.
227 * (bug 27590) prop=imageinfo now allows querying the media type
228 * (bug 27587) list=filearchive now outputs full title info
229 * (bug 27018) Added action=filerevert to revert files to an old version
230 * (bug 27897) list=allusers and list=users list hidden users
231 * (bug 27717) API's exturlusage module does not respect $wgMiserMode
232 * (bug 27588) list=filearchive&faprop=sha1 returns empty attribute
233
234 === Languages updated in 1.18 ===
235
236 MediaWiki supports over 330 languages. Many localisations are updated
237 regularly. Below only new and removed languages are listed, as well as
238 changes to languages because of Bugzilla reports.
239
240 * Liv (liv) (new)
241
242 * (bug 17160) Gender specific display text for User namespace
243 * Link trail added for sl and sh
244 * (bug 27633) Add characters to linkTrail for Potuguese (pt and pt-br)
245 * (bug 27426) Set $namespaceGenderAliases for Arabic (ar)
246 * (bug 27385) Set Polish $namespaceGenderAliases
247 * (bug 27681) Set $namespaceGenderAliases for Portuguese (pt and pt-br)
248 * (bug 27785) Fallback language for Kabardian (kbd) is English now.
249 * (bug 27825) Raw watchlist edit message now uses formatted numbers.
250
251 == Compatibility ==
252
253 MediaWiki 1.18 requires PHP 5.1 (5.2 recommended). PHP 4 is no longer
254 supported.
255
256 MySQL 3.23.x is no longer supported; some older hosts may need to upgrade.
257 At this time we still recommend 4.0, but 4.1/5.0 will work fine in most cases.
258
259
260 == Upgrading ==
261
262 1.18 has several database changes since 1.17, and will not work without schema
263 updates.
264
265 If upgrading from before 1.11, and you are using a wiki as a commons reposito-
266 ry, make sure that it is updated as well. Otherwise, errors may arise due to
267 database schema changes.
268
269 If upgrading from before 1.7, you may want to run refreshLinks.php to ensure
270 new database fields are filled with data.
271
272 If you are upgrading from MediaWiki 1.4.x or earlier, some major database
273 changes are made, and there is a slightly higher chance that things could
274 break. Don't forget to always back up your database before upgrading!
275
276 See the file UPGRADE for more detailed upgrade instructions.
277
278
279 === Caveats ===
280
281 Some output, particularly involving user-supplied inline HTML, may not
282 produce 100% valid or well-formed XHTML output. Testers are welcome to
283 set $wgMimeType = "application/xhtml+xml"; to test for remaining problem
284 cases, but this is not recommended on live sites. (This must be set for
285 MathML to display properly in Mozilla.)
286
287 For notes on 1.17.x and older releases, see HISTORY.
288
289
290 === Online documentation ===
291
292 Documentation for both end-users and site administrators is currently being
293 built up on MediaWiki.org, and is covered under the GNU Free Documentation
294 License (except for pages that explicitly state that their contents are in
295 the public domain) :
296
297 http://www.mediawiki.org/wiki/Documentation
298
299
300 === Mailing list ===
301
302 A MediaWiki-l mailing list has been set up distinct from the Wikipedia
303 wikitech-l list:
304
305 http://lists.wikimedia.org/mailman/listinfo/mediawiki-l
306
307 A low-traffic announcements-only list is also available:
308
309 http://lists.wikimedia.org/mailman/listinfo/mediawiki-announce
310
311 It's highly recommended that you sign up for one of these lists if you're
312 going to run a public MediaWiki, so you can be notified of security fixes.
313
314
315 === IRC help ===
316
317 There's usually someone online in #mediawiki on irc.freenode.net