maxlength=200 for page move summary in HTML5
[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.16 ==
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 === Configuration changes in 1.16 ===
22 * $wgScriptModifiedMsgCheck Checks the mediawiki namespace recent changes to
23 ensure a updated urid for script-loader
24 * $wgScriptModifiedCheck Checks script file modified time for unique request id)
25 * $wgEnableAsyncDownload (lets you disable Async download for windows.
26 Hopefully we will remove this configuration var soon)
27 * $wgEnableFirefogg enable support for firefogg extension, firefogg supports
28 in-browser transcoding, chunk uploads and client side hash checking.
29 * $wgEnableTemporalOggUrls enable oggz_chop support a server side ogg seeking
30 helper
31 * $wgEnableScriptLoader if the script-loader should be enabled
32 * $wgJSAutoloadClasses array of javascript classes to file paths used by
33 script-loader to load javascript by class name.
34 * $wgEnableJS2system if we should include js2 stuff like jquery, mv_embed.js
35 (script-loader helper) and use new interfaces for upload
36 * $wgEnableScriptLoaderJsFile if we support grabbing js files with the script
37 loader. By default we only grab classes in $wgJSAutoloadClasses
38 * $wgEnableScriptMinify if you want the script loader to minify js
39 * $wgEnableScriptLocalization if you want the script loader to do msg lookups
40 * $wgMwEmbedDirectory the path to MwEmbed Directory (maybe we can depreciate
41 this. Was used when mwEmbed was going to be an extension.
42 * $wgDebugJavaScript if we want to enable fresh debug javascript
43 * $wgPhpCliPath Path to php-cli for spinning up background php processes
44 * (bug 18222) $wgMinimalPasswordLength default is now 1
45 * $wgSessionHandler can be used to configure session.save_handler
46 * $wgLocalFileRepo/$wgForeignFileRepos now have a 'fileMode' parameter to
47 be used when uploading/moving files
48 * (bug 18761) $wgHiddenPrefs is a new array for specifying preferences not
49 to be shown to users
50 * $wgAllowRealName and $wgAllowUserSkin were deprecated in favor of
51 $wgHiddenPrefs[] = 'realname', but the former are still retained
52 for backwards-compatibility
53 * (bug 9257) $wgRCMaxAge now defaults to three months
54 * $wgDevelopmentWarnings can be set to true to show warnings about deprecated
55 functions and other potential errors when developing.
56 * Subpages are now enabled in the MediaWiki namespace by default. This is
57 mainly a cosmetic change, and does not in any way affect the MessageCache,
58 which was already effectively treating the namespace as if it had subpages.
59 * (bug 10837) $wgVariant is a user variant selected in the user's preferences
60 if the $wgContLang does not have variant, then the $wgLang is used instead.
61 * Oracle: maintenance/ora/user.sql script for creating DB user on oracle with
62 appropriate privileges. Creating this user with web-install page requires
63 oci8.privileged_connect set to On in php.ini.
64 * Removed UserrightsChangeableGroups hook introduced in 1.14
65 * Added $wgCacheDirectory, to replace $wgFileCacheDirectory,
66 $wgLocalMessageCache, and any other local caches which need a place to put
67 files.
68 * $wgFileCacheDirectory is no longer set to anything by default, and so either
69 needs to be set explicitly, or $wgCacheDirectory needs to be set instead.
70 * $wgLocalMessageCache has been removed. Instead, set $wgUseLocalMessageCache
71 to true
72 * Removed $wgEnableSerializedMessages and $wgCheckSerialized. Similar
73 functionality is now available via $wgLocalisationCacheConf.
74 * $wgMessageCache->addMessages() is deprecated. Messages added via this
75 interface will not appear in Special:AllMessages.
76 * $wgRegisterInternalExternals can be used to record external links pointing
77 to same server
78 * $wgSpecialVersionExtended shows the extended version information besides
79 PHP and database version.
80 * (bug 19907) $wgCrossSiteAJAXdomains and $wgCrossSiteAJAXdomainExceptions added
81 to control which external domains may access the API via cross-site AJAX.
82 * $wgMaintenanceScripts for extensions to add their scripts to the default list
83 * $wgMemoryLimit has been added, default value '50M'
84 * $wgExtraRandompageSQL is deprecated, the SpecialRandomGetRandomTitle hook
85 should be used instead
86 * (bug 20489) $wgIllegalFileChars added to override the default list of illegal
87 characters in file names.
88 * (bug 19646) $wgImgAuthDetails added to display reason access to uploaded file
89 was denied to users(img_auth only)
90 * (bug 19646) $wgImgAuthPublicTest added to test to see if img_auth set up
91 correctly (img_auth only)
92 * $wgUploadMaintenance added to disable file deletions and restorations during
93 maintenance
94 * $wgCapitalLinkOverrides added to configure per-namespace capitalization
95 * (bug 21172) $wgSorbsUrl can now be an array with multiple DNSBL
96 * $wgEnableHtmlDiff has been removed
97 * (bug 3340) $wgBlockCIDRLimit added (default: 16) to configure the low end of
98 CIDR ranges for blocking
99 * $wgUseInstantCommons added for quick and easy enabling of Commons as a remote
100 file repository
101 * $wgWikiId added to override default output of wfWikiId()
102 * $wgDBAhandler added to choose a DBA handler when using CACHE_DBA
103 * $wgPreviewOnOpenNamespaces for extensions that create namespaces that behave
104 similarly to the category namespace.
105
106 === New features in 1.16 ===
107
108 * Add CSS defintion of the 'wikitable' class to shared.css
109 * (bug 17163) Added MediaWiki:Talkpageheader which will be displayed when
110 viewing talk pages
111 * Superfluous border="0" removed from images
112 * Added new hook 'MessageCacheReplace' into MessageCache.php. For instance
113 to allow extensions to update caches in similar way as MediaWiki invalidates
114 a cached MonoBook sidebar
115 * Special:AllPages: Move hardcoded styles from code to CSS
116 * (bug 18529) New hook: SoftwareInfo for adding information about the software
117 to Special:Version
118 * Added $wgExtPGAlteredFields to allow extensions to easily alter the data
119 type of columns when using the Postgres backend.
120 * (bug 16950) Show move log when viewing/creating a deleted page
121 * (bug 18242) Show the Subversion revision number per extensions in
122 Special:Version
123 * (bug 18420) Missing file revisions are handled gracefully now
124 * (bug 9219) Auth plugins can control editing RealName/Email/Nick preferences
125 * (bug 18466) Add note or warning when overruling a move (semi-)protection
126 * (bug 18342) insertTags works in edit summary box
127 * (bug 18411) The upload form also checks post_max_size
128 * Watchlist now has a specialized <div> tag that contains a unique class for
129 each page
130 * Added Minguo calendar support for the Taiwan Chinese language
131 * Database: unionQueries function to be used for UNION sql construction, so
132 it can be overloaded on DB abstraction level for DB specific functionality
133 * (bug 18849) Implement Japanese and North Korean calendars
134 * (bug 5755) Introduce {{CURRENTMONTH1}} and {{LOCALMONTH1}} to display the
135 month number without the leading zero
136 * (bug 13456) categoriespagetext supports PLURAL
137 * (bug 18860) Blocks of IPs affecting registered users can now block email
138 * (bug 17093) Date and time are separate parameters in Special:BlockList
139 * (bug 11484) Added ISO speed rating to default collapsed EXIF metadata view
140 * (bug 14866) Messages 'recentchangeslinked-toolbox' and
141 'recentchangeslinked-toolbox' were added to allow more fine grained
142 customisation of the user interface
143 * DISPLAYTITLE now accepts a limited amount of wiki markup (the single-quote
144 items)
145 * Special:Search now could search terms in all variant-forms. ONLY apply on
146 wikis enabled LanguageConverter.
147 * Add autopromote condition APCOND_BLOCKED to autopromote blocked users to
148 various user groups.
149 * Add $wgRevokePermissions as a means of restricting a group's rights. The
150 syntax is identical to $wgGroupPermissions, but users in these groups will
151 have these rights stripped from them.
152 * Added a PHP port of CDB (constant database), for improved local caching when
153 the DBA extension is not available.
154 * Introduced a new system for localisation caching. The system is based around
155 fast fetches of individual messages, minimising memory overhead and startup
156 time in the typical case. The database backend will be used by default, but
157 set $wgCacheDirectory to get a faster CDB-based implementation.
158 * Expanded the number of variables which can be set in the extension messages
159 files.
160 * Added a feature to allow per-article process pool size control for the parsing
161 task, to limit resource usage when the cache for a heavily-viewed article is
162 invalidated. Requires an external daemon.
163 * (bug 19576) Moved the id attribues from the anchors accompanying section
164 headers to the <span class="mw-headline"> elements within the section headers,
165 removing the redundant anchor elements.
166 * Parser::setFunctionTagHook now can be used to add a new tag which is parsed at
167 preprocesor level.
168 * Added $wgShowArchiveThumbnails, allowing sysadmins to disable thumbnail
169 display for old versions of images.
170 * In watchlists and Special:RecentChanges, the difference in page size now
171 appears in dark green if bytes were added and dark red if bytes were removed.
172 * Added FSRepo configuration properties thumbUrl and thumbDir, to allow the
173 thumbnails to be stored in a separate location to the source images.
174 * If config/ directory is not executable, the command to make it executable
175 now asks the user to cd to the correct directory
176 * Add experimental new external authentication framework, ExternalAuth
177 * (bug 18768) Remove AdminSettings requirements. Maintenance environment
178 will still load it if it exists, but it's not required for anything
179 * (bug 19900) The "listgrouprights-key" message is now wrapped in a div with
180 class "mw-listgrouprights-key"
181 * (bug 471) Allow RSS feeds for watchlist, using an opt-in security token
182 * (bug 10812) Interwiki links can have names and descriptions, fetched from
183 message 'interwiki-desc-PREFIX', not really used anywhere yet though
184 * (bug 9691) Add type (signup or login) parameter to
185 AuthPlugin::ModifyUITemplate()
186 * (bug 14454) "Member of group(s)" in Special:Preferences causes language
187 difficulties
188 * (bug 16697) Unicode combining characters are difficult to edit in some
189 browsers
190 * Parser test supports uploading results to remote CodeReview instance
191 * (bug 20013) Added CSS class "mw-version-ext-version" is wrapped on the
192 extension version in Special:Version
193 * (bug 20014) Added CSS class "mw-listgrouprights-right-name" is wrapped on the
194 right name in Special:ListGroupRights
195 * (bug 12920) New CoreParserFunction {{nse:...}} as an url-friendly equivalent
196 to {{ns:...}}
197 * (bug 16322) Allow maintenance scripts to accept DB user/pass over input or
198 params
199 * (bug 18566) Maintenance script to un/protect pages
200 * (bug 671) The HTML <abbr> tag is now permitted.
201 * RecentChanges now has a legend to explain what the Nmb! flags mean, and the
202 flags have tooltips.
203 * (bug 15209) New hook BeforeInitialize called after everything has been setup
204 but before Mediawiki::performRequestForTitle()
205 * wgMainPageTitle variable now available to JavaScript code to identify the main
206 page link, so it doesn't have to be extracted from the link URLs.
207 * (bug 16836) Display preview of signature in user preferences and describe its
208 use
209 * The default output format is now HTML 5 instead of XHTML 1.0 Transitional.
210 This can be disabled by setting $wgHtml5 = false;. Specific features enabled
211 if HTML 5 is used:
212 ** New HTML 5 input attributes allow JavaScript-free input validation in some
213 cutting-edge browsers. E.g., some inputs will be autofocused, users will
214 not be allowed to submit forms with certain types of invalid values (like
215 numbers outside the permitted ranges), etc.
216 ** The summary attribute has been removed from tables of contents. summary is
217 obsolete in HTML 5 and wasn't useful here anyway.
218 ** Unnecessary type="" attribute removed for CSS and JS.
219 ** If $wgWellFormedXml is set to false, some bytes will be shaved off of HTML
220 output by omitting some things like quotation marks where HTML 5 allows.
221 ** (bug 16921) maxlength enabled for page move comments
222 * The description message in $wgExtensionCredits can be an array with parameters
223 * New hook SpecialRandomGetRandomTitle allows extensions to modify the selection
224 criteria used by Special:Random and subclasses, or substitute a custom result,
225 deprecating the $wgExtraRandompageSQL config variable
226 * (bug 20318) Distinct CSS classes for ISBN/RFC/PMID special links added
227 * (bug 20404) Custom fields in the user creation form template can now have
228 detail labels in prefsectiontip divs.
229 * MakeSysop and MakeBot are now aliases for Special:UserRights
230 * IndexPager->mLimitsShown can now be an associative array of limit => text-to-
231 display-in-limit-form.
232 * (bug 18880) LogEventsList::showLogExtract() can now take a string-by-reference
233 and add its HTML to it, rather than having to go straight to $wgOut.
234 * Added $wgShowDBErrorBacktrace, to allow users to easily gather backtraces for
235 database connection and query errors.
236 * Show change block / unblock link on Special:Contributions if user is blocked
237 * Display note on Special:Contributions if the user is blocked, and provide an
238 excerpt from the block log.
239 * (bug 19646) New hook: ImgAuthBeforeStream for tests and functionality before
240 file is streamed to user, but only when using img_auth
241 * Note on non-existing user and user talk pages if user does not exist
242 * New hook ShowMissingArticle so extensions can modify the output for
243 non-existent pages.
244 * Added $wgUseAJAXCategories allow enabling AJAX based categories system.
245 This works on all namespaces. Enabled namespaces can be reduces using
246 $wgAJAXCategoriesNamespaces.
247 * Admins could disable some variants using $wgDisabledVariants now. ONLY apply
248 on wikis enabled LanguageConverter.
249 * (bug 16310) Credits page now lists IP addresses rather than saying the number
250 of anonymous users that edited the page
251 * New permission 'sendemail' added. Default right for all registered users. Can
252 for example be used to prevent new accounts from sending spam.
253 * (bug 16979) Tracking categories for __INDEX__ and __NOINDEX__
254 * Two new hooks, ConfirmEmailComplete and InvalidateEmailComplete, which are
255 called after a user's email has been successfully confirmed or invalidated.
256 * (bug 19741) Moved the XCF files out of the main MediaWiki distribution, for
257 a smaller subversion checkout.
258 * (bug 13750) First letter capitalization can now be a per-namespace setting
259 * (bug 21073) "User does not exist" message no longer displayed on sub-sub-pages
260 of existing users
261 * (bug 21095) Tracking categories produced by the parser (expensive parser
262 function limit exceeded, __NOINDEX__ tracking, etc) can now be disabled by
263 setting the system message ([[MediaWiki:expensive-parserfunction-category]]
264 etc) to "-".
265 * Added maintenance script sqlite.php for SQLite-specific maintenance tasks.
266 * Rewrote Special:Upload to allow easier extension.
267 * Upload errors that can be solved by changing the filename now do not require
268 reuploading.
269 * Added $wgRateLimitsExcludedIPs, to allow specific IPs to be whitelisted from
270 rate limits.
271 * (bug 21222) When $wgUseTeX is not enabled, <math> is no longer registered with
272 the parser so extensions are free to implement their own <math> tag
273 * (bug 21047) Wrap 'cannotdelete' into a div with the generic 'error' class and
274 an own 'mw-error-cannotdelete' class
275 * New hook AbortNewAccountAuto, called before account creation from AuthPlugin-
276 or ExtUser-driven requests.
277 * (bug 3480) The warning saying that the page has a history when deleting it now
278 contains the number of revisions in the history
279 * $wgStylePath and $wgLogo are now set in the default LocalSettings.php file.
280 * (bug 20186) Allow filtering history for revision deletion.
281 * New hook getOtherBlockLogLink, called in Special:IPBlockList and Special:Block
282 to show links to block logs of other blocking extensions, i.e. GlobalBlocking
283 * Added search capabilities to SQLite backend
284 * rebuildtextindex.php maintenance script now supports databases other than
285 MySQL
286 * upgrade1_5.php now requires to be run --update option to prevent confusion
287 * (bug 17662) Customizable default preload/editintro in add-new-section link
288 for Talk page
289 * Added maintenance script syntaxChecker.php that checks for PHP syntax errors
290 and common coding mistakes
291 * Updated Unicode normalization tables
292 * (bug 21604) Spellcheck attribute for editsummary
293 * New wgCategories JavaScript global variable for userscripts.
294 * (bug 20717) Added checkboxes to hide users with bot and/or sysop group
295 membership in SpecialActiveusers
296 * Allow \pagecolor and \definecolor in texvc
297 * $wgTexvcBackgroundColor contains background color for texvc call
298 * (bug 21574) Redirects can now have "303 See Other" HTTP status
299 * EditPage refactored to allow extensions to derive new edit modes much easier.
300 * (bug 21826) Subsections of Special:Version now also have anchors
301
302 === Bug fixes in 1.16 ===
303
304 * (bug 18031) Make namespace selector on Special:Export remember the previous
305 selection
306 * The svn-version version numbers on Special:Version have been removed
307 * (bug 17374) Special:Export no longer exports two copies of the same page
308 * (bug 18190) Proper parsing in MediaWiki:Sharedupload message
309 * (bug 17617) HTML cleanup for ImagePage
310 * (bug 17964) namespaceDupes.php no longer fails on an empty interwiki table
311 * Improved error handling for image moving
312 * (bug 17974) On Special:SpecialPages, restricted special pages are now marked
313 with <strong> tags, helps with text-based browsers
314 * (bug 18259) Special:DeletedContributions now also uses
315 MediaWiki:Sp-contributions-logs for the link to Special:Log
316 * Don't add empty title="" attributes to links to anchors on the current page
317 * (bug 18291) rebuildrecentchanges.php failed to add deletion log entries
318 * (bug 18304) rebuildrecentchanges.php got size changes wrong
319 * (bug 18170) Fixed a PHP warning in Parser::preSaveTransform() in PHP 5.3
320 * (bug 18289) Database connection error page now returns correct HTML
321 * "successbox", "errorbox" and related CSS classes are now available in all
322 skins
323 * (bug 18316) Removed superfluous name="fulltext" from Special:Search
324 * (bug 18331) MediaWiki:Undelete-revision can now have wikitext
325 * The "noautoblock" flag is no longer displayed in the block log when blocking
326 an IP address
327 * (bug 18009) $wgHooks and $wgExtensionFunctions now support closures
328 * (bug 17948) Maintenance scripts now exit(0) or exit(1) as appropriate
329 * (bug 18377) Time in Enhanced ChangesList lacking localisation
330 * (bug 12998) Allow <sup>, <sub>, etc. in DISPLAYTITLE
331 * (bug 1553) Lowercase navigation headings in German
332 * (bug 7830) Pending transactions failed to commit on loginToUse() error
333 * (bug 11613) session.save_handler being over-ridden
334 * (bug 11381) session.save_handler being set twice (causes error)
335 * (bug 17835) ForeignAPIRepo throwing error on first page load for file
336 * (bug 18115) ForeignAPIRepo cache isn't working
337 * Fixed a bug caused by LanguageConverter.php, which brings an abnormal '}-'
338 after some parsed math syntax.
339 * (bug 18441) rebuildrecentchanges.inc no longer ignores $wgLogRestrictions
340 * (bug 18317) Bolded selections in 1 | 3 | etc days on RecentChanges now use
341 <strong> instead of hardcoded styles
342 * (bug 18449) Fixed items number per column on category pages when the total is
343 divisible by 3
344 * (bug 18121) maintenance/deleteArchivedRevisions.php no longer deletes
345 revisions when --delete is not passed
346 * (bug 13172) GPS coordinates in image Exif data are now actually displayed
347 * Overhaul of preferences system, includes the following bug fixes:
348 ** (bug 5363) Changes to default preferences now impact registered users.
349 ** (bug 14806) Hook to enable putting preferences in existing tabs.
350 ** (bug 17191) Registration date now listed on preferences page.
351 ** The user_properties table (now used for storing preferences) has been added
352 to $wgSharedTables.
353 ** Note that this change will break some extensions which have not been adapted
354 for it.
355 * (bug 17020) Adding fallback encodings for Traditional and Simplified Chinese
356 languages while the the text is typed as URLs.
357 * (bug 17614) Prev / Next links are not shown if all results are shown
358 * (bug 18207) Strange spacing before [[irc:...]] links
359 * Removed float from the user login form in RTL interface - caused display
360 problems in FF2
361 * (bug 15008) Redirect images are now subject to Bad image list rules
362 * (bug 6802) profileinfo.php now also work on other database servers than MySQL
363 * (bug 16925) Diffs no longer fail when $wgExternalDiffEngine is set to
364 'wikidiff' or 'wikidiff2' but extension is not installed
365 * (bug 18326) Chmod errors in file repos have been hidden
366 * (bug 18718) Comma after a } create a error in IE
367 * (bug 18716) Removed redundant class in Modern skin CSS for category links and
368 tweaked spacing.
369 * (bug 18656) Use proper directory separators in wfMkdirParents()
370 * (bug 18549) Make Special:Blockip respect $wgEnableUserEmail and
371 $wgSysopEmailBans
372 * (bug 16912) Tooltips on images with link= disappear
373 * (bug 18389) Localise numbers in EXIF data
374 * (bug 18522) Wrap MediaWiki:Protect-cascadeon in a div for identification
375 * (bug 18438) Tweak HTML for preview bar for consistency and accessibility
376 * (bug 18432) Updated documentation for dumpBackup.php
377 * Fix array logic in Sanitizer::removeHTMLtags so that it doesn't strip good
378 tags that were redundantly defined.
379 * (bug 14118) SpecialPage::getTitleFor does not return a localised name
380 * (bug 18698) Renaming non entry point maintenance scripts from .inc.php to
381 .inc
382 * Deprecated methods Title::getInterwikiLink, Title::userCanCreate(),
383 Title::userCanEdit() and Title::userCanMove() have been removed
384 * Only show upload links on file description if $wgEnableUploads = true
385 and user can upload
386 * Don't say "You need to log in to upload/move", because it's possible that
387 uploading/moving is disabled for registered users as well (e.g. only sysops)
388 * (bug 18943) Handle invalid titles gracefully at Special:Mostlinked
389 * (bug 8873) Enable variant conversion in text on 'alt' and 'title' attributes
390 * (bug 10837) Introducing the StubUserVariant class to determine the variant
391 variable instead of using this to overrules the user language preference.
392 * (bug 19014) If user had deletedhistory right, but not undeleted right, then
393 show "view" instead of "view/restore" on logs.
394 * (bug 19017) TOC level calculation error in an odd case
395 * (bug 18999) CSS update for RTL interwiki links
396 * (bug 18925) history.js removes class names of list elements on initialization
397 * Multiple whitespace in TOC anchors is now stripped, for consistency with the
398 link from the edit comment
399 * (bug 19112) Preferences now respects $wgUseExternalEditor
400 * (bug 18173) MediaWiki now fails when unable to determine a client IP
401 * (bug 19170) Special:Version should follow the content language direction
402 * (bug 19160) maintenance/purgeOldText.inc is now compatible with PostgreSQL
403 * Fixed performance regression in "bad image list" feature
404 * Show user preference 'Use live preview' if $wgLivePreview is enabled only
405 * (bug 17014) Blocked users can no longer use Special:UserRights unless they
406 can add/remove *all* groups (have 'userrights' permission).
407 * (bug 19294) Always show Sp-contributions-footer(-anon)
408 * Attempts to restrict reading of pages while anonymous viewing is allowed
409 via extensions not using the userCan hook and via $wgRevokePermissions now
410 work.
411 * (bug 8445) Multiple-character search terms are now handled properly for
412 Chinese
413 * (bug 19450) Use formatNum for "Number of edits" in Special:Preferences
414 * (bug 11242) Check for MySQL storage engines during installation now checks
415 whether the engines are actually available
416 * (bug 19390) Omit the "printable version" link on the printable version
417 * (bug 18394) img_auth.php now respects userCan
418 * (bug 19509) Uploading to a file named '0' previously treated it as null input
419 and attempted to upload with the source name. Now warns about not having an
420 extension (since 0.ext is perfectly valid)
421 * (bug 19468) Enotif preferences are now only displayed when they are turned on
422 * (bug 19442) Show/hide options on watchlist only work once
423 * (bug 19602) PubMed Magic links now use updated NIH url
424 * (bug 19637) externallinks have links to self
425 * Don't load Opera 9.5 RTL fixes for Opera 9.6
426 * Remove five-year-old KHTMLFixes.css, which is unlikely to be relevant anymore
427 and was causing problems.
428 * Removed repetition of URIs in the title attributes of external links.
429 * (bug 19693) User name is now escaped in "Contributions for ..." link on
430 Special:BlockIP
431 * (bug 19571) Override buildConcat for SQLite.
432 * Log in and log out links no longer return to page view when clicked from
433 history view, edit page, or something similar
434 * (bug 19513) RTL fixes for new Search UI
435 * (bug 16497) Special:Allmessages is paginated
436 * (bug 18708) CSS plainlinks class now available to all skins
437 * (bug 19590) Database error messages no longer have "MySQL" hardcoded as the
438 database type
439 * (bug 19759) successbox on Special:Preferences now correctly aligned on
440 standard, nostalgia and cologneblue skin
441 * (bug 19814) interwiki links from file links ([[File:Foo.jpg|link=de:Test]])
442 are no longer recorded in the pagelinks table
443 * (bug 19784) date option "ISO 8601" produced illegal id
444 * (bug 19761) Removed autogenerated <meta keywords> tag with link data.
445 Keyword set was not useful, and is ignored by modern search engines anway.
446 * (bug 19827) Special:SpecialPages title is "Upload file
447 * (bug 19355) Added .xhtml, .xht to upload file extension blacklist
448 * (bug 19287) Workaround for lag on history page in Firefox 3.5
449 * (bug 19564) Updated docs/hooks.txt
450 * (bug 18751) Fix for buggage in profiling setup for some extensions on PHP 5.1
451 * (bug 17139) ts_resortTable inconsistent trimming makes date sorting fragile
452 * (bug 19445) Change oldimage table to use ON UPDATE CASCADE for FK to image
453 table.
454 * (bug 14080) Short notation links to subpages didn't work in edit summaries
455 * (bug 17374) Special:Export no longer exports multiple copies of pages
456 * (bug 19818) Edits to user CSS/JS subpages can now be marked as patrolled by
457 users who can't edit them
458 * (bug 19839) Comments in log items are no more double escaped
459 * (bug 18161) Fix inconsistent separators in watchlist link toolbars with
460 "enhanced recent changes"
461 * (bug 16877) Moving a page over a redirect no longer leaves an orphan entry in
462 the recentchanges table
463 * (bug 16009) Limit selection forms based on Pager now links to the correct page
464 when using long urls
465 * The display of the language list on the preferences is more comply with the
466 BCP 47 standards.
467 * (bug 19849) Custom X-Vary-Options header now disabled unless $wgUseXVO is set
468 * (bug 19301) Duplicates entries in $wgAddGroups, $wgRemoveGroups,
469 $wgGroupsAddToSelf and $wgGroupsRemoveFromSelf are no more displayed on
470 Special:ListGroupRights
471 * (bug 18799) Special:Userlogin now handles correctly the returnto parameter
472 to not link back to Special:Userlogout when user's language isn't the same as
473 content's language
474 * (bug 19479) Show proper error message when unable to connect to PostgreSQL
475 database with username/password in MediaWiki's setup
476 * (bugs 18407, 18409) Special:Upload is now listed on Special:Specialpages only
477 if uploads are enabled and the user can access it
478 * (bug 17988) Spaces before [[Category:]] links are no longer ignored
479 * (bug 19957) All known-failing tests now marked disabled; added --run-disabled
480 option to parser test suite to run disabled tests if desired.
481 * (bug 16311) Make recent change flags (n/m/b) <abbr>s instead of <span>s
482 * (bug 15680) Split the edit tip message of user CSS/JS subpage into
483 "usercssyoucanpreview" and "userjsyoucanpreview" respectively.
484 * (bug 12110) Split the rights for editing users' CSS/JS subpage from
485 "editusercssjs" into "editusercss" and edituserjs" respectively.
486 * (bug 19394) RecentChanges feed URLs for log items with no revisions
487 (eg Newuser, Userrights) are no longer broken
488 * (bug 17395) Remote file descriptions use user language ($wgLang), not wiki
489 language ($wgContLang)
490 * (bug 11867) Lock error on redirect table when running orphans.php
491 * (bug 18930) initStats.php now refreshes active users count
492 * (bug 18699) Using the nosummary URL option no longer triggers the "You have
493 not provided a summary" warning for those who activated it in their
494 preferences
495 * (bug 18855) commandLine.inc and Maintenance.php are now properly included
496 using the full path
497 * (bug 18497) Fixed broken style sheets in Opera fullscreen mode
498 * (bug 16084) Default memory limit has be increased to 50M, see $wgMemoryLimit
499 * (bug 17864/19519) Added proper input normalization in Special:UserRights
500 * (bug 20086) Add Hook to add extra statistics at the end of Special:Statistics
501 * (bug 19289) importDump.php can now handle bzip2 and 7zip
502 * (bug 20131) Fixed a PHP notice for users having the "rollback" right on
503 Special:RecentChangesLinked
504 * Do not transform EXIF fields with pure text to avoid results like
505 foo,bar@example,com
506 * (bug 20176) Fix login/logout links in skin CologneBlue
507 * (bug 20203) "Powered by Mediawiki" now has height/width on image tag
508 * (bug 20273) Fix broken output when no pages are found in the content
509 namespaces
510 * (bug 20265) Make AncientPages and UnusedFiles work on SQLite
511 * Fixed XSS vulnerability for Internet Explorer clients (only pre-release
512 versions of MediaWiki were affected).
513 * (bug 14817) Moving a page to a subpage of itself moves it twice
514 * (bug 20289) $wgMaximumMovedPages should only count pages actually moved
515 * (bug 15248) Non-breaking spaces and certain other Unicode space characters
516 are now normalized to ordinary spaces in titles; if your wiki has existing
517 titles with such characters, run cleanupTitles.php and/or cleanupImages.php
518 * (bug 11143) Links containing invalid UTF-8 percent-code sequences are now
519 cleanly disabled instead of breaking parsing entirely on PHP 5.2.
520 * (bug 20296) Fixed an PHP warning in Language::getMagic() in PHP 5.3
521 * (bug 20358) Unprotect tab was missing accesskey; now same as protect tab.
522 * (bug 20317) Cleaned up default main page link accesskey settings
523 * (bug 20362) Special:Statistics now produces valid HTML when view counters are
524 enabled
525 * (bug 19857) maintenance/deleteRevision.php on last revision no longer breaks
526 target page
527 * (bug 20365) Page name with with c/g/h/j/s/u + x are now correctly handled in
528 Special:MovePage with Esperanto as content language
529 * (bug 20364) Fixed regression in GIF metadata loading
530 * (bug 20299) MediaWiki:Move-subpages and MediaWiki:Move-talk-subpages can now
531 use wikitext
532 * (bug 15475) DatabaseBase::setFlag(), DatabaseBase::clearFlag() and
533 DatabaseBase::getFlag() now have documentation
534 * (bug 19966) MediaWiki:License-header is now used for the licensing header in
535 the file description page instead of MediaWiki:License
536 * (bug 20380) Links to history/deleted edits at the top of
537 Special:RevisionDelete are no more displayed when when doing log suppression
538 * (bug 8143) Localised parser function names are now correctly case insensitive
539 if they contain non-ASCII characters
540 * (bug 19055) maintenance/rebuildrecentchanges.php now purges
541 Special:Recentchanges's RSS and Atom feed cache
542 * The installer will now try to bypass PHP's max_execution_time
543 * (bug 20260) SQLite no longer tries to automatically create the database at
544 execution time, this now happens only at install time; if it is not available
545 at script execution, it now throws an exception
546 * Fixed EditFilterMerged hook so the hookError parameter serves a purpose
547 (analogous to EditFilter hook)
548 * (bug 2257) Tag extensions can expand template parameters provided to the tag,
549 by using a new parameter added to the recursiveTagParse function
550 * (bug 14900) __INDEX__ and __NOINDEX__ no longer override site config set in
551 $wgArticleRobotPolicies.
552 * (bug 20466) Hidden categories are no more displayed when printing
553 * (bug 20446) When changing user rights with User@remotewiki and remotewiki is
554 the local wiki, the user is now treated as the local user
555 * (bug 20494) OutputPage::getArticleBodyOnly() no longer requires an useless
556 argument
557 * (bug 20136) Protection form JavaScript now synchronizes the expiry boxes on
558 any change, in addition to onkeyup.
559 * Don't link to "edit this page" on MediaWiki:Noarticletext if user is not
560 allowed to create page. Done via new message
561 MediaWiki:Noarticletext-nopermission
562 * Improved compatibility between the Vector skin and addPortletLink() from
563 wikibits.js: empty portlets are now present but hidden, adding an element to a
564 portlet unhides it
565 * (bug 19531) addPortletLink() now wraps inserted labels in a <span> element to
566 be compatible with the CSS for the Vector skin
567 * (bug 20578) Wrong localized image metadata - duplicated string?
568 * (bug 20556) Stub threshold's "other" <input> in Special:Preferences now has a
569 correct type="text" parameter
570 * (bug 482) Don't include TOC in the printable version if it has been hidden
571 * Adjust the time according to the user configuration on Special:Revisiondelete
572 * (bug 20624) Installation no longer allows "qqq" as the chosen language
573 * (bug 20634) The installer-created database user will now have all rights on
574 the database so that upgrades will go more smoothly.
575 * (bug 18180) Special:Export ignores limit, dir, offset parameters
576 * User::getBlockedStatus() works for all kinds of user objects and doesn't
577 assume the user object is equal to the current-user object ($wgUser)
578 * (bug 20517) Cancel link from edit page now returns to the old version when
579 editing an old version
580 * (bug 16902) Installer no longer shows warnings when exec() has been disabled
581 by disable_functions
582 * (bug 20726) Title::getLatestRevID's documentation now says that the function
583 returns false if the page doesn't exist
584 * (bug 20751) ForeignApiRepo now urldecodes filenames when saving to local cache
585 * (bug 20730) Fix to Special:Version ViewVC link for branch checkouts
586 * (bug 20353) wfShellExec() was adding extra quotes on Windows Vista, causing
587 command line scripts to fail
588 * (bug 20702) Parser functions can now be used correctly in
589 MediaWiki:Missing-article
590 * (bug 14117) "redirected from" is now also shown on foreign file redirects
591 * (bug 17747) Only display thumbnail column in file history if the image can
592 be rendered.
593 * (bug 3421) Live preview no longer breaks user CSS/JS previews
594 * (bug 11264) The file logo on a file description page for documents (PDF, ...)
595 now links to the file rather than the file description page
596 * Password fields built with HTMLForm now still have the type="password"
597 attribute if $wgHtml5=false.
598 * (bug 20836) Preload now works for MediaWiki namespace
599 * (bug 20885) Search box no longer suggests unavailable special pages
600 * (bug 20948) "Create this page" on Special:Search is no longer displayed when
601 searching for special pages
602 * (bug 20524) Hideuser: Show nice error when trying to block hidden user without
603 hideuser right
604 * (bug 21026) Fixed file redirects on shared repos on non-English client wikis
605 * (bug 21030) Fixed schema choices from being overwritten by defining unique
606 field names per driver.
607 * (bug 21115) wgCanonicalSpecialPageName javascript variable is now always
608 false on non-special pages
609 * (bug 21113) "Other statistics" header on Special:Statistics is no more
610 displayed when there isn't any entry in it
611 * (bug 21114) Special:Contributions no longer shows diff links for new
612 revisions
613 * (bug 21116) MediaWiki:Templatesused, MediaWiki:Templatesusedpreview and
614 MediaWiki:Templatesusedsection now support plural
615 * (bug 21079) There is no more line wrapping between label and field in
616 Special:Log
617 * (bug 20256) Fixed SQL errors on Special:Recentchanges and
618 Special:Recentchangeslinked on SQLite backend
619 * (bug 20880) Fixed updater failure on SQLite backend
620 * (bug 21182) Fixed invalid HTML in Special:Listgrouprights
621 * (bug 20242) Installer no longer promts for user credentials for SQLite
622 databases
623 * (bug 20911) Installer failed to create a SQLite database
624 * (bug 20847) Deprecated deprecated akeytt() removed in wikibits.js leaving
625 dummy
626 * (bug 21161) Changing $wgCacheEpoch now always invalidates file cache
627 * (bug 20268) Fixed row count estimation on SQLite backend
628 * (bug 20275) Fixed LIKE queries on SQLite backend
629 * (bug 21234) Moving subpages of titles containing \\ now works properly
630 * (bug 21006) maintenance/updateArticleCount.php now works again on PostgreSQL
631 * (bug 19319) Add activeusers-intro message at top of SpecialActiveUsers page
632 * (bug 21255) Fixed hostname construction for DNSBL checking
633 * (bug 18019) Users are now warned when moving a file to a name in use on a
634 shared repository and only users with the 'reupload-shared' permission can
635 complete the move.
636 * (bug 18909) Add missing Postgres INSERT SELECT wrapper
637 * User::isValidPassword now only returns boolean results,
638 User::getPasswordValidity can be used to get an error message string
639 * The error message shown in Special:ChangePassword now parses wiki markup
640 * (bug 19859) Removed experimental HTMLDiff feature
641 * Removed section edit links in edit conflict form
642 * Allow SpecialActiveusers to work on non-MySQL databases
643 * (bug 6579) Fixed protecting images from uploading only
644 * (bug 18609) Search index was empty for some pages
645 * (bug 13453) rebuildrecentchanges maintenance script works on PG again
646 * (bug 16583) Reduce false positives when checking for PHP (on upload, etc.)
647 * (bug 20112) Bitrotted tests in the t/ directory were failing.
648 * (bug 21470) MediaWiki:Sp-contributions-explain is now wrapped in a <p> with
649 id "mw-sp-contributions-explain"
650 * (bug 19159) Fixed \overleftrightarrow in texvc
651 * (bug 19391) Fix caching for Recent ChangesFeed.
652 * (bug 21455) Fixed "Watch this page" checkbox appearing on some special pages
653 even to non-logged in users
654 * (bug 21551) Make Squid reponse limit configurable
655 * Fixed corruption of long UDP debug log messages by using socket_sendto()
656 instead of fsockopen() with fwrite().
657 * (bug 16884) Fixed feed links in sidebar not complying with URL parameters
658 of the displayed page
659 * (bug 21403) memcached class renamed to MWMemecached to avoid conflict with
660 PHP's memcached extension
661 * (bug 21650) Both calls to SkinTemplateTabs hook are now compatible
662 * (bug 21672) Add missing Accept-Language to both Vary and XVO headers
663 * (bug 21679) "Edit block reasons" link at the bottom of Special:Blockip is now
664 only displayed to the users that have "editinterface" right
665 * (bug 21740) Attempting to protect a page that doesn't exist (salting) returns
666 "unknown error"
667 * (bug 18762) both redirects and links get fixed one after another if
668 redirects-only switch is not present
669 * (bug 20159) thumbnails rerendered if older that $wgThumbnailEpoch
670 * Fixed a bug which in some situations causes the job queue to grow forever,
671 due to an infinite loop of job requeues.
672 * (bug 21523) File that can have multiple pages (djvu, pdf, ...) no longer have
673 the page selector when they have only one page
674 * (bug 21559) "logempty" message is now wrapped in a div with class
675 "mw-warning-logempty" when used in log extract
676 * (bug 20549) Parser tests were broken on SQLite backend
677 * (bug 21776) Interwiki urls like http://en.wikibooks.org/wiki/cs: should give
678 a redirect instead of a baderror.
679 * (bug 21803) Special:MyContributions now keeps the query string parameters
680 * Redirecting special pages now keep query string paramters set to "0" (e.g.
681 for namespace)
682 * (bug 20765) Special:ListGroupRights no longer misses addables and removables
683 groups if there are duplicate entries
684
685 == API changes in 1.16 ==
686
687 * Added uiprop=changeablegroups to meta=userinfo
688 * Added usprop=gender to list=users
689 * (bug 18311) action=purge now works for images too
690 * Add parentid to prop=revisions output
691 * (bug 17832) action=delete returns 'unknownerror' instead of 'permissiondenied'
692 when the user is blocked
693 * (bug 18546) Added timestamp of new revision to action=edit output
694 * (bug 18554) Also list hidden revisions in list=usercontribs for privileged
695 users
696 * (bug 13049) "API must be accessed from the primary script entry point" error
697 * (bug 16422) Don't display help for format=jsonfm unless specifically requested
698 * Added PHP and database version to meta=siteinfo output
699 * (bug 18533) Add readonly message to meta=siteinfo output
700 * (bug 18518) Add clprop=hidden to prop=categories
701 * (bug 18710) Fixed internal error with empty parameter in action=paraminfo
702 * (bug 18709) Missing descriptions for some parameters in action=paraminfo
703 output
704 * (bug 18731) Show correct SVN links for extension modules in api.php?version
705 * (bug 18730) Add version information to action=paraminfo output
706 * (bug 18743) Add ucprop=size to list=usercontribs
707 * (bug 18749) Add generator flag to action=paraminfo output
708 * Make action=block respect $wgEnableUserEmail and $wgSysopEmailBans
709 * Made deleting file description pages without files possible
710 * (bug 18773) Add content flag to siprop=namespaces output
711 * (bug 18785) Add siprop=languages to meta=siteinfo
712 * (bug 14200) Added user and excludeuser parameters to list=watchlist and
713 list=recentchanges
714 * Added index, fromtitle and byteoffset fields to action=parse&prop=sections
715 output
716 * (bug 19313) action=rollback returns wrong revid on master/slave setups
717 * (bug 19323) action=parse doesn't return section tree on pages with Cite
718 warnings
719 * (bug 18720) Add anchor field to action=parse&prop=sections output
720 * (bug 19423) The initial file description page used caption in user lang
721 rather than UI lang
722 * (bug 17809) Add number of users in user groups to meta=siteinfo
723 * (bug 18533) Add readonly reason to readonly exception
724 * (bug 19528) Added XSLT parameter to API queries in format=xml
725 * (bug 19040) Fix prependtext and appendtext in combination with section
726 parameter in action=edit
727 * (bug 19090) Added watchlist parameter, deprecated watch and unwatch
728 parameter in action=edit
729 * Added fields to list=search output: size, wordcount, timestamp, snippet
730 * Where supported by backend, list=search adds a 'searchinfo' element with
731 optional info: 'totalhits' count and 'suggestion' alternate query term
732 * (bug 19907) $wgCrossSiteAJAXdomains added to allow specified (or all)
733 external domains to access api.php via AJAX, if the browser supports the
734 Access-Control-Allow-Origin HTTP header
735 * (bug 19999) Made metadata and properties of search results optional. Added
736 srprop and srinfo.
737 * (bug 20700) Add amprop=default to meta=allmessages to list default value for
738 customized messages
739 * Don't parse magic words in meta=allmessages, output messages unparsed
740 * (bug 21105) list=usercontribs can now list contribs for User:0
741 * (bug 21085) list=deletedrevs no longer returns only one revision when
742 drcontinue param is passed
743 * (bug 21106) Deprecated parameters now tagged in action=paraminfo
744 * (bug 19004) Added support for tags
745 * (bug 21083) list=allusers no longer returns current timestamp for users
746 without registration date
747 * (bug 20967) action=edit allows creation of invalid titles
748 * (bug 19523) Add inprop=watched to prop=info
749 * (bug 21589) API: Separate summary and initial page text for uploads
750 * (bug 21817) list=usercontribs returns empty result for empty ucuser
751 * (bug 21441) meta=userinfo&uiprop=options no longer returns default options
752 for logged-in users under certain circumstances
753
754 === Languages updated in 1.16 ===
755
756 MediaWiki supports over 300 languages. Many localisations are updated
757 regularly. Below only new and removed languages are listed, as well as
758 changes to languages because of MediaZilla reports.
759
760 * North Frisian (frr) (new)
761 * Kirmanjki (kiu) (new)
762 * Karachay-Balkar (krc) (new)
763 * Hill Mari (mrj) (new)
764 * Prussian (prg) (new)
765 * Romagnol (rgn) (new)
766 * Lower Silesian (sli) (new)
767 * Picard (pcd) (new)
768 * Uyghur (Arabic script) (ug-arab) (new)
769 * Votic (vot) (new)
770 * Eastern Yiddish (ydd) (removed)
771 * Iriga Bicolano (bto) (removed)
772 * Ladin (lld) (removed)
773 * Laz (lzz) (removed)
774 * Palembang (plm) (removed)
775 * Megleno-Romanian (Greek script) (ruq-grek) (removed)
776 * Tamazight (tzm) (removed)
777
778 * (bug 18474) Sorani (ckb - Central Kurdish) (renamed from ku-arab)
779 * Add PLURAL function for Scots Gaelic (gd)
780 * Add Estonian letters äöõšüž to linktrail (et)
781 * (bug 18776) Native name of Burmese language (my)
782 * (bug 18806) Use correct unicode characters in spelling of native Chuvash
783 (Чӑвашла)
784 * (bug 18864) Updated autonym for Zhuang language
785 * (bug 18308) Updated date formatting in Occitan (oc)
786 * (bug 19080) Added ăâîşţșțĂÂÎŞŢȘȚ to Romanion (ro) linktrail
787 * (bug 19286) Correct commafying function in Polish (pl)
788 * (bug 19441) Updated date formatting for Lithuanian
789 * (bug 19630) Added ÄäÇçĞğŇňÖöŞşÜüÝýŽž to Turkmen (tk) linktrail
790 * (bug 19949) New linktrail for Greek (el)
791 * (bug 19809) Korean (North Korea) (ko-kp) (new)
792 * (bug 19968) Fixed "Project talk" namespace name for Maltese (mt)
793 * (bug 21168) Added áâãàéêçíóôõúü to Portuguese (pt) linktrail
794 * (bug 21596) Change interwiki link for Kurdish (ku)
795
796 == Compatibility ==
797
798 MediaWiki 1.16 requires PHP 5 (5.2 recommended). PHP 4 is no longer supported.
799
800 PHP 5.0.x fails on 64-bit systems due to serious bugs with array processing:
801 http://bugs.php.net/bug.php?id=34879
802 Upgrade affected systems to PHP 5.1 or higher.
803
804 MySQL 3.23.x is no longer supported; some older hosts may need to upgrade.
805 At this time we still recommend 4.0, but 4.1/5.0 will work fine in most cases.
806
807
808 == Upgrading ==
809
810 1.16 has several database changes since 1.15, and will not work without schema
811 updates.
812
813 If upgrading from before 1.11, and you are using a wiki as a commons reposito-
814 ry, make sure that it is updated as well. Otherwise, errors may arise due to
815 database schema changes.
816
817 If upgrading from before 1.7, you may want to run refreshLinks.php to ensure
818 new database fields are filled with data.
819
820 If you are upgrading from MediaWiki 1.4.x or earlier, some major database
821 changes are made, and there is a slightly higher chance that things could
822 break. Don't forget to always back up your database before upgrading!
823
824 See the file UPGRADE for more detailed upgrade instructions.
825
826
827 === Caveats ===
828
829 Some output, particularly involving user-supplied inline HTML, may not
830 produce 100% valid or well-formed XHTML output. Testers are welcome to
831 set $wgMimeType = "application/xhtml+xml"; to test for remaining problem
832 cases, but this is not recommended on live sites. (This must be set for
833 MathML to display properly in Mozilla.)
834
835 For notes on 1.15.x and older releases, see HISTORY.
836
837
838 === Online documentation ===
839
840 Documentation for both end-users and site administrators is currently being
841 built up on MediaWiki.org, and is covered under the GNU Free Documentation
842 License (except for pages that explicitly state that their contents are in
843 the public domain) :
844
845 http://www.mediawiki.org/wiki/Documentation
846
847
848 === Mailing list ===
849
850 A MediaWiki-l mailing list has been set up distinct from the Wikipedia
851 wikitech-l list:
852
853 http://lists.wikimedia.org/mailman/listinfo/mediawiki-l
854
855 A low-traffic announcements-only list is also available:
856
857 http://lists.wikimedia.org/mailman/listinfo/mediawiki-announce
858
859 It's highly recommended that you sign up for one of these lists if you're
860 going to run a public MediaWiki, so you can be notified of security fixes.
861
862
863 === IRC help ===
864
865 There's usually someone online in #mediawiki on irc.freenode.net