RELEASE-NOTES entry for r53457 (oops)
[mediawiki.git] / RELEASE-NOTES
blob8918bd0a4e81fe94f50bc8b3b3c944f9eba0a284
1 = MediaWiki release notes =
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.
6 == MediaWiki 1.16 ==
8 THIS IS NOT A RELEASE YET
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.
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.
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
21 === Configuration changes in 1.16 ===  
23 * $wgEnableFirefogg enable support for firefogg extension, firefogg supports 
24 in-browser transcoding, chunk uploads and client side hash checking. 
25 * $wgEnableTemporalOggUrls enable oggz_chop support a server side ogg seeking
26 helper 
27 * $wgEnableScriptLoader if the script-loader shoudl be enabled
28 * $wgJSAutoloadClasses array of javascript classes to file paths used by
29 script-loader to load javascript by class name. 
30 * $wgEnableJS2system  if we should include js2 stuff like jquery, 
31 mv_embed.js (script-loader helper) and use new interfaces for upload
32 * $wgEnableScriptLoaderJsFile if we support grabbing js files with the script
33 loader. By default we only grab classes in $wgJSAutoloadClasses
34 * $wgEnableScriptMinify if you want the script loader to minify js
35 * $wgEnableScriptLocalization if you want the script loader to do msg lookups
36 * $wgMwEmbedDirectory the path to MwEmbed Directory (maybe we can depreciate
37 this. Was used when mwEmbed was going to be an extension.   
38 * $wgDebugJavaScript if we want to enable fresh debug javascript 
39 * $wgPhpCliPath Path to php-cli for spinning up background php processes
41 * (bug 18222) $wgMinimalPasswordLength default is now 1
42 * $wgSessionHandler can be used to configure session.save_handler
43 * $wgLocalFileRepo/$wgForeignFileRepos now have a 'fileMode' parameter to
44   be used when uploading/moving files
45 * (bug 18761) $wgHiddenPrefs is a new array for specifying preferences not
46   to be shown to users
47 * $wgAllowRealName and $wgAllowUserSkin were deprecated in favor of
48   $wgHiddenPrefs[] = 'realname', but the former are still retained
49   for backwards-compatibility
50 * (bug 9257) $wgRCMaxAge now defaults to three months
51 * $wgDevelopmentWarnings can be set to true to show warnings about deprecated
52   functions and other potential errors when developing.
53 * Subpages are now enabled in the MediaWiki namespace by default.  This is
54   mainly a cosmetic change, and does not in any way affect the MessageCache,
55   which was already effectively treating the namespace as if it had subpages.
56 * (bug 10837) $wgVariant is a user variant selected in the user's preferences
57   if the $wgContLang does not have variant, then the $wgLang is used instead.
58 * Oracle: maintenance/ora/user.sql script for creating DB user on oracle with
59   appropriate privileges. Creating this user with web-install page requires
60   oci8.privileged_connect set to On in php.ini.
61 * Removed UserrightsChangeableGroups hook introduced in 1.14
62 * Added $wgCacheDirectory, to replace $wgFileCacheDirectory, 
63   $wgLocalMessageCache, and any other local caches which need a place to put 
64   files. 
65 * $wgFileCacheDirectory is no longer set to anything by default, and so either
66   needs to be set explicitly, or $wgCacheDirectory needs to be set instead. 
67 * $wgLocalMessageCache has been removed. Instead, set $wgUseLocalMessageCache
68   to true
69 * Removed $wgEnableSerializedMessages and $wgCheckSerialized. Similar 
70   functionality is now available via $wgLocalisationCacheConf.
71 * $wgMessageCache->addMessages() is deprecated. Messages added via this 
72   interface will not appear in Special:AllMessages.
73 * $wgRegisterInternalExternals can be used to record external links pointing 
74   to same server
75 * $wgHtml5 outputs an HTML 5 doctype instead of XHTML 1.0 Transitional.
76 * $wgSpecialVersionExtended shows the extended version information besides 
77   PHP and database version.
79 === New features in 1.16 ===
81 * Add CSS defintion of the 'wikitable' class to shared.css
82 * (bug 17163) Added MediaWiki:Talkpageheader which will be displayed when
83   viewing talk pages
84 * Superfluous border="0" removed from images
85 * Added new hook 'MessageCacheReplace' into MessageCache.php. For instance
86   to allow extensions to update caches in similar way as MediaWiki invalidates
87   a cached MonoBook sidebar
88 * Special:AllPages: Move hardcoded styles from code to CSS
89 * (bug 18529) New hook: SoftwareInfo for adding information about the software
90   to Special:Version
91 * Added $wgExtPGAlteredFields to allow extensions to easily alter the data
92   type of columns when using the Postgres backend.
93 * (bug 16950) Show move log when viewing/creating a deleted page
94 * (bug 18242) Show the Subversion revision number per extensions in
95   Special:Version
96 * (bug 18420) Missing file revisions are handled gracefully now
97 * (bug 9219) Auth plugins can control editing RealName/Email/Nick preferences
98 * New hook: MessageNotInMwNs to handle localised messages that aren't in the
99   Mediawiki Namespace, before checking the message files
100 * (bug 18466) Add note or warning when overruling a move (semi-)protection
101 * (bug 18342) insertTags works in edit summary box
102 * (bug 18411) The upload form also checks post_max_size
103 * Watchlist now has a specialized <div> tag that contains a unique class for
104   each page
105 * Added Minguo calendar support for the Taiwan Chinese language
106 * Database: unionQueries function to be used for UNION sql construction, so
107   it can be overloaded on DB abstraction level for DB specific functionality
108 * (bug 18849) Implement Japanese and North Korean calendars
109 * (bug 5755) Introduce {{CURRENTMONTH1}} and {{LOCALMONTH1}} to display the
110   month number without the leading zero
111 * (bug 13456) categoriespagetext supports PLURAL
112 * (bug 18860) Blocks of IPs affecting registered users can now block email
113 * (bug 17093) Date and time are separate parameters in Special:BlockList
114 * (bug 11484) Added ISO speed rating to default collapsed EXIF metadata view
115 * (bug 14866) Messages 'recentchangeslinked-toolbox' and
116   'recentchangeslinked-toolbox' were added to allow more fine grained
117   customisation of the user interface
118 * DISPLAYTITLE now accepts a limited amount of wiki markup (the single-quote items)
119 * Special:Search now could search terms in all variant-forms. ONLY apply on
120   wikis with LanguageConverter
121 * Add autopromote condition APCOND_BLOCKED to autopromote blocked users to various
122   user groups.
123 * Add $wgRevokePermissions as a means of restricting a group's rights. The syntax is
124   identical to $wgGroupPermissions, but users in these groups will have these rights
125   stripped from them.
126 * Added a PHP port of CDB (constant database), for improved local caching when
127   the DBA extension is not available.
128 * (bug 14611) Added support showing the version of the web server, image 
129   thumbnailing engine, diff/diff3 engine and TeX engine, enabled for sysops 
130   by default.
131 * Introduced a new system for localisation caching. The system is based around 
132   fast fetches of individual messages, minimising memory overhead and startup 
133   time in the typical case. The database backend will be used by default, but 
134   set $wgCacheDirectory to get a faster CDB-based implementation.
135 * Expanded the number of variables which can be set in the extension messages 
136   files.
137 * Added a feature to allow per-article process pool size control for the parsing 
138   task, to limit resource usage when the cache for a heavily-viewed article is
139   invalidated. Requires an external daemon. 
140 * Leading > is now syntax for <blockquote>.
141 * (bug 19576) Moved id attribues from anchors accompanying section headers to
142   the section headers themselves, removing the redundant anchor elements.
143 * Parser::setFunctionTagHook now can be used to add a new tag which is parsed at
144   preprocesor level.
145 * Added $wgShowArchiveThumbnails, allowing sysadmins to disable thumbnail 
146   display for old versions of images.
147 * In watchlists and Special:RecentChanges, the difference in page size now
148   appears in dark green if bytes were added and dark red if bytes were removed.
149 * Added FSRepo configuration properties thumbUrl and thumbDir, to allow the 
150   thumbnails to be stored in a separate location to the source images.
151 * If config/ directory is not executable, the command to make it executable 
152   now asks the user to cd to the correct directory
154 === Bug fixes in 1.16 ===
156 * (bug 18031) Make namespace selector on Special:Export remember the previous
157   selection
158 * The svn-version version numbers on Special:Version have been removed
159 * (bug 17374) Special:Export no longer exports two copies of the same page
160 * (bug 18190) Proper parsing in MediaWiki:Sharedupload message
161 * (bug 17617) HTML cleanup for ImagePage
162 * (bug 17964) namespaceDupes.php no longer fails on an empty interwiki table
163 * Improved error handling for image moving
164 * (bug 17974) On Special:SpecialPages, restricted special pages are now marked
165   with <strong> tags, helps with text-based browsers
166 * (bug 18259) Special:DeletedContributions now also uses
167   MediaWiki:Sp-contributions-logs for the link to Special:Log
168 * Don't add empty title="" attributes to links to anchors on the current page
169 * (bug 18291) rebuildrecentchanges.php failed to add deletion log entries
170 * (bug 18304) rebuildrecentchanges.php got size changes wrong
171 * (bug 18170) Fixed a PHP warning in Parser::preSaveTransform() in PHP 5.3
172 * (bug 18289) Database connection error page now returns correct HTML
173 * "successbox", "errorbox" and related CSS classes are now available in all
174   skins
175 * Fixed a PHP notice when $wgEnableSerializedMessages was set to false
176 * (bug 18316) Removed superfluous name="fulltext" from Special:Search
177 * (bug 18331) MediaWiki:Undelete-revision can now have wikitext
178 * The "noautoblock" flag is no longer displayed in the block log when blocking
179   an IP address
180 * (bug 18009) $wgHooks and $wgExtensionFunctions now support closures
181 * (bug 17948) Maintenance scripts now exit(0) or exit(1) as appropriate
182 * (bug 18377) Time in Enhanced ChangesList lacking localisation
183 * (bug 12998) Allow <sup>, <sub>, etc. in DISPLAYTITLE
184 * (bug 1553) Lowercase navigation headings in German
185 * (bug 7830) Pending transactions failed to commit on loginToUse() error
186 * (bug 11613) session.save_handler being over-ridden
187 * (bug 11381) session.save_handler being set twice (causes error)
188 * (bug 17835) ForeignAPIRepo throwing error on first page load for file
189 * (bug 18115) ForeignAPIRepo cache isn't working
190 * Fixed a bug caused by LanguageConverter.php, which brings an abnormal '}-'
191   after some parsed math syntax.
192 * (bug 18441) rebuildrecentchanges.inc no longer ignores $wgLogRestrictions
193 * (bug 18317) Bolded selections in 1 | 3 | etc days on RecentChanges now use
194   <strong> instead of hardcoded styles
195 * (bug 18449) Fixed items number per column on category pages when the total is
196   divisible by 3
197 * (bug 18121) maintenance/deleteArchivedRevisions.php no longer deletes
198   revisions when --delete is not passed
199 * (bug 13172) GPS coordinates in image Exif data are now actually displayed
200 * Overhaul of preferences system, includes the following bug fixes:
201 * (bug 5363) Changes to default preferences now impact registered users.
202 * (bug 14806) Hook to enable putting preferences in existing tabs.
203 * (bug 17191) Registration date now listed on preferences page.
204 * Note that this change will break some extensions which have not been adapted
205   for it.
206 * (bug 17020) Adding fallback encodings for Traditional and Simplified Chinese
207   languages while the the text is typed as URLs.
208 * (bug 17614) Prev / Next links are not shown if all results are shown
209 * (bug 18207) Strange spacing before [[irc:...]] links
210 * Removed float from the user login form in RTL interface - caused display
211   problems in FF2
212 * (bug 15008) Redirect images are now subject to Bad image list rules
213 * (bug 6802) profileinfo.php now also work on other database servers than MySQL
214 * (bug 16925) Diffs no longer fail when $wgExternalDiffEngine is set to
215   'wikidiff' or 'wikidiff2' but extension is not installed
216 * (bug 18326) Chmod errors in file repos have been hidden
217 * (bug 18718) Comma after a } create a error in IE
218 * (bug 18716) Removed redundant class in Modern skin CSS for category links and
219   tweaked spacing.
220 * (bug 18656) Use proper directory separators in wfMkdirParents()
221 * (bug 18549) Make Special:Blockip respect $wgEnableUserEmail and
222   $wgSysopEmailBans
223 * (bug 16912) Tooltips on images with link= disappear
224 * (bug 18389) Localise numbers in EXIF data
225 * (bug 18522) Wrap MediaWiki:Protect-cascadeon in a div for identification
226 * (bug 18438) Tweak HTML for preview bar for consistency and accessibility
227 * (bug 18432) Updated documentation for dumpBackup.php
228 * Fix array logic in Sanitizer::removeHTMLtags so that it doesn't strip good
229   tags that were redundantly defined.
230 * (bug 14118) SpecialPage::getTitleFor does not return a localised name
231 * (bug 18698) Renaming non entry point maintenance scripts from .inc.php to
232   .inc
233 * Deprecated methods Title::getInterwikiLink, Title::userCanCreate(),
234   Title::userCanEdit() and Title::userCanMove() have been removed
235 * Only show upload links on file description if $wgEnableUploads = true
236   and user can upload
237 * Don't say "You need to log in to upload/move", because it's possible that
238   uploading/moving is disabled for registered users as well (e.g. only sysops)
239 * (bug 18943) Handle invalid titles gracefully at Special:Mostlinked
240 * (bug 8873) Enable variant conversion in text on 'alt' and 'title' attributes
241 * (bug 10837) Introducing the StubUserVariant class to determine the variant
242   variable instead of using this to overrules the user language preference.
243 * (bug 19014) If user had deletedhistory right, but not undeleted right, then
244   show "view" instead of "view/restore" on logs.
245 * (bug 19017) TOC level calculation error in an odd case
246 * (bug 18999) CSS update for RTL interwiki links
247 * (bug 18925) history.js removes class names of list elements on initialization
248 * Multiple whitespace in TOC anchors is now stripped, for consistency with the
249   link from the edit comment
250 * (bug 19112) Preferences now respects $wgUseExternalEditor, $wgExternalDiffEngine
251 * (bug 18173) MediaWiki now fails when unable to determine a client IP
252 * (bug 19170) Special:Version should follow the content language direction
253 * (bug 19160) maintenance/purgeOldText.inc is now compatible with PostgreSQL
254 * Fixed performance regression in "bad image list" feature
255 * Show user preference 'Use live preview' if $wgLivePreview is enabled only
256 * (bug 17014) Blocked users can no longer use Special:UserRights unless they
257   can add/remove *all* groups (have 'userrights' permission).
258 * (bug 19294) Always show Sp-contributions-footer(-anon)
259 * Attempts to restrict reading of pages while anonymous viewing is allowed
260   via extensions not using the userCan hook and via $wgRevokePermissions now work.
261 * (bug 8445) Multiple-character search terms are now handled properly for Chinese
262 * (bug 19450) Use formatNum for "Number of edits" in Special:Preferences
263 * (bug 11242) Check for MySQL storage engines during installation now checks
264   whether the engines are actually available
265 * (bug 19390) Omit the "printable version" link on the printable version
266 * (bug 18394) img_auth.php now respects userCan
267 * (bug 19509) Uploading to a file named '0' previously treated it as null input
268    and attempted to upload with the source name. Now warns about not having an
269    extension (since 0.ext is perfectly valid)
270 * (bug 19468) Enotif preferences are now only displayed when they are turned on
271 * (bug 19442) Show/hide options on watchlist only work once
272 * (bug 19602) PubMed Magic links now use updated NIH url
273 * (bug 19637) externallinks have links to self
274 * Don't load Opera 9.5 RTL fixes for Opera 9.6
275 * Remove five-year-old KHTMLFixes.css, which is unlikely to be relevant anymore
276   and was causing problems.
277 * Removed repetition of URIs in the title attributes of external links.
278 * (bug 19693) User name is now escaped in "Contributions for ..." link on
279   Special:BlockIP
280 * (bug 19571) Override buildConcat for SQLite.
281 * Log in and log out links no longer return to page view when clicked from
282   history view, edit page, or something similar
283 * (bug 19513) RTL fixes for new Search UI
284 * (bug 16497) Special:Allmessages is paginated
285 * (bug 18708) CSS plainlinks class now available to all skins
286 * (bug 19590) Database error messages no longer have "MySQL" hardcoded as the 
287   database type
288 * (bug 19759) successbox on Special:Preferences now correctly aligned on
289   standard, nostalgia and cologneblue skin
291 == API changes in 1.16 ==
293 * Added uiprop=changeablegroups to meta=userinfo
294 * Added usprop=gender to list=users
295 * (bug 18311) action=purge now works for images too
296 * Add parentid to prop=revisions output
297 * (bug 17832) action=delete returns 'unknownerror' instead of 'permissiondenied'
298   when the user is blocked
299 * (bug 18546) Added timestamp of new revision to action=edit output
300 * (bug 18554) Also list hidden revisions in list=usercontribs for privileged
301   users
302 * (bug 13049) "API must be accessed from the primary script entry point" error
303 * (bug 16422) Don't display help for format=jsonfm unless specifically requested
304 * Added PHP and database version to meta=siteinfo output
305 * (bug 18533) Add readonly message to meta=siteinfo output
306 * (bug 18518) Add clprop=hidden to prop=categories
307 * (bug 18710) Fixed internal error with empty parameter in action=paraminfo
308 * (bug 18709) Missing descriptions for some parameters in action=paraminfo
309   output
310 * (bug 18731) Show correct SVN links for extension modules in api.php?version
311 * (bug 18730) Add version information to action=paraminfo output
312 * (bug 18743) Add ucprop=size to list=usercontribs
313 * (bug 18749) Add generator flag to action=paraminfo output
314 * Make action=block respect $wgEnableUserEmail and $wgSysopEmailBans
315 * Made deleting file description pages without files possible
316 * (bug 18773) Add content flag to siprop=namespaces output
317 * (bug 18785) Add siprop=languages to meta=siteinfo
318 * (bug 14200) Added user and excludeuser parameters to list=watchlist and
319   list=recentchanges
320 * Added index, fromtitle and byteoffset fields to action=parse&prop=sections
321   output
322 * (bug 19313) action=rollback returns wrong revid on master/slave setups
323 * (bug 19323) action=parse doesn't return section tree on pages with Cite
324   warnings
325 * (bug 18720) Add anchor field to action=parse&prop=sections output
326 * (bug 19423) The initial file description page used caption in user lang
327   rather than UI lang
328 * Added snippet field to list=search output
329 * (bug 17809) Add number of users in user groups to meta=siteinfo
330 * (bug 18533) Add readonly reason to readonly exception
331 * (bug 19528) Added XSLT parameter to API queries in format=xml
332 * (bug 19040) Fix prependtext and appendtext in combination with section 
333   parameter in action=edit
334 * (bug 19090) Added watchlist parameter, deprecated watch and unwatch 
335   parameter in action=edit
337 === Languages updated in 1.16 ===
339 MediaWiki supports over 300 languages. Many localisations are updated
340 regularly. Below only new and removed languages are listed, as well as
341 changes to languages because of MediaZilla reports.
343 * Lower Silesian (sli) (new)
344 * Uyghur (Arabic script) (ug-arab) (new)
346 * (bug 18474) Sorani (ckb - Central Kurdish) (renamed from ku-arab)
347 * Add PLURAL function for Scots Gaelic (gd)
348 * Add Estonian letters äöõšüž to linktrail (et)
349 * (bug 18776) Native name of Burmese language (my)
350 * (bug 18806) Use correct unicode characters in spelling of native Chuvash
351   (Чӑвашла)
352 * (bug 18864) Updated autonym for Zhuang language
353 * (bug 18308) Updated date formatting in Occitan (oc)
354 * (bug 19080) Added ăâîşţșțĂÂÎŞŢȘȚ to Romanion (ro) linktrail
355 * (bug 19286) Correct commafying function in Polish (pl)
356 * (bug 19441) Updated date formatting for Lithuanian
357 * (bug 19630) Added ÄäÇçĞğŇňÖöŞşÜüÝýŽž to Turkmen (tk) linktrail
359 == Compatibility ==
361 MediaWiki 1.16 requires PHP 5 (5.2 recommended). PHP 4 is no longer supported.
363 PHP 5.0.x fails on 64-bit systems due to serious bugs with array processing:
364 http://bugs.php.net/bug.php?id=34879
365 Upgrade affected systems to PHP 5.1 or higher.
367 MySQL 3.23.x is no longer supported; some older hosts may need to upgrade.
368 At this time we still recommend 4.0, but 4.1/5.0 will work fine in most cases.
371 == Upgrading ==
373 1.16 has several database changes since 1.15, and will not work without schema
374 updates.
376 If upgrading from before 1.11, and you are using a wiki as a commons reposito-
377 ry, make sure that it is updated as well. Otherwise, errors may arise due to
378 database schema changes.
380 If upgrading from before 1.7, you may want to run refreshLinks.php to ensure
381 new database fields are filled with data.
383 If you are upgrading from MediaWiki 1.4.x or earlier, some major database
384 changes are made, and there is a slightly higher chance that things could
385 break. Don't forget to always back up your database before upgrading!
387 See the file UPGRADE for more detailed upgrade instructions.
390 === Caveats ===
392 Some output, particularly involving user-supplied inline HTML, may not
393 produce 100% valid or well-formed XHTML output. Testers are welcome to
394 set $wgMimeType = "application/xhtml+xml"; to test for remaining problem
395 cases, but this is not recommended on live sites. (This must be set for
396 MathML to display properly in Mozilla.)
398 For notes on 1.15.x and older releases, see HISTORY.
401 === Online documentation ===
403 Documentation for both end-users and site administrators is currently being
404 built up on MediaWiki.org, and is covered under the GNU Free Documentation
405 License (except for pages that explicitly state that their contents are in
406 the public domain) :
408   http://www.mediawiki.org/wiki/Documentation
411 === Mailing list ===
413 A MediaWiki-l mailing list has been set up distinct from the Wikipedia
414 wikitech-l list:
416   http://lists.wikimedia.org/mailman/listinfo/mediawiki-l
418 A low-traffic announcements-only list is also available:
420   http://lists.wikimedia.org/mailman/listinfo/mediawiki-announce
422 It's highly recommended that you sign up for one of these lists if you're
423 going to run a public MediaWiki, so you can be notified of security fixes.
426 === IRC help ===
428 There's usually someone online in #mediawiki on irc.freenode.net