Copy FilesystemIterator constants so we can still pretend to support 5.2
[lhc/web/wiklou.git] / RELEASE-NOTES-1.19
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.19 ==
7
8 THIS IS NOT A RELEASE YET
9
10 MediaWiki 1.19 is an alpha-quality branch and is not recommended for use in
11 production.
12
13 === Configuration changes in 1.19 ===
14 * Changed LoginAuthenticateAudit hook so that it may be called before a
15 valid user is available. In those cases, an anonymouse user object
16 will be supplied.
17 * Removed SkinTemplateSetupPageCss hook; use BeforePageDisplay instead.
18 * (bug 27132) movefile right granted by default to registered users.
19 * Default cookie lifetime ($wgCookieExpiration) is increased to 180 days.
20 * (bug 31204) Removed old user.user_options.
21 * $wgMaxImageArea now applies to jpeg files if they are not scaled with
22 ImageMagick.
23 * Introduced $wgQueryPageDefaultLimit (defaults to 50) for the number of
24 items to show by default on query pages (special pages such as Whatlinkshere).
25 * (bug 32470) Increase the length of ug_group.
26 * (bug 32239) Removed wgEnableTooltipsAndAccesskeys.
27 * Removed $wgVectorShowVariantName.
28 * Removed $wgExtensionAliasesFiles. Use wgExtensionMessagesFiles.
29
30 === New features in 1.19 ===
31 * (bug 19838) Possibility to get all interwiki prefixes if the interwiki
32 cache is used.
33 * $wgDnsBlacklistUrls now accepts an array with url and key as the
34 elements to work with DNSBLs that require keys, such as
35 Project Honeypot.
36 * (bug 30022) Add support for custom loadScript sources to ResourceLoader.
37 * (bug 19052) Unicode space separator characters (Zs) now terminates external
38 links and images links.
39 * (bug 30160) Add public method to mw.loader to get module names from registry.
40 * (bug 15558) Parameters to special pages included in wikitext can now be passed
41 as with templates.
42 * Installer now issues a warning if mod_security is present.
43 * (bug 29455) Add support for a filter callback function in jQuery byteLimit
44 plugin.
45 * Added two new GetLocalURL hooks to better serve extensions working on a
46 limited type of titles.
47 * Added a --no-updates flag to importDump.php that skips updating the links
48 tables.
49 * Most presentational html attributes like valign are now converted to inline
50 css style rules. These attributes were removed from html5 and so we clean
51 them up when $wgHtml5 is enabled. This can be disabled using
52 $wgCleanupPresentationalAttributes.
53 * Magic words (time and number-formatting ones, plus DIRECTIONMARK, but not
54 NAMESPACE) now depend on the page content language instead of the site
55 language. In theory this sets the right magic words in system messages,
56 although they are not used there.
57 * (bug 30451) Add page_props to RefreshLinks::deleteLinksFromNonexistent.
58 * (bug 30450) Clear page_props table on page deletion.
59 * Hook added to check for exempt from account creation throttle.
60 * (bug 30344) Add configuration variable for setting custom priorities when
61 generating sitemaps.
62 * (bug 96170) Add array support for space-separated list attributes (like
63 'class') in the Html helper class.
64 * (bug 26470) Add checkered background image on hover on files pages.
65 * (bug 30774) mediawiki.html: Add support for numbers and booleans in the
66 attribute values and element contents.
67 * Conversion script between Tifinagh and Latin for the Tachelhit language.
68 * (bug 16755) Add options 'noreplace' and 'noerror' to {{DEFAULTSORT:...}}
69 to stop it from replace an already existing default sort, and suppress error.
70 * (bug 18578) Rewrote revision delete related messages to allow better
71 localisation.
72 * (bug 30364) LanguageConverter now depends on the page content language
73 instead of the wiki content language.
74 * Jump links will now be usable in css-capable browsers instead of only
75 in outdated text browsers.
76 * New common*.css files usable by skins instead of having to copy piles
77 of generic styles from MonoBook or Vector's css.
78 * Some deprecated presentational html attributes will now be automatically
79 converted to css.
80 * (bug 31297) Add support for namespaces in Special:RecentChanges subpage filter
81 syntax.
82 * The default user signature now contains a talk link in addition to the user link.
83 * (bug 25306) Add link of old page title to MediaWiki:Delete_and_move_reason.
84 * Added hook BitmapHandlerCheckImageArea.
85 * (bug 30062) Add $wgDBprefix option to cli installer.
86 * getUserPermissionsErrors and getUserPermissionsErrorsExpensive hooks are now
87 also called when checking for 'read' permission.
88 * Introduce $wgEnableSearchContributorsByIP which controls whether searching
89 for an IP address redirects to the contributions list for that IP.
90 * (bug 8859) Database::update should take array of tables too.
91 * (bug 19698) Inverse selection for Special:Contributions.
92 * (bug 24037) Add byte length of revision to Special:Contributions.
93 * (bug 1672) Added $wgDisableUploadScriptChecks to allow uploading of files
94 containing HTML or JS. DISABLING THESE CHECKS IS VERY DANGEROUS.
95 * New path mappings can be added using the WebRequestPathInfoRouter hook
96 and adding paths to the PathRouter.
97 * (bug 32666) Special:ActiveUsers now allows a subpage to be used as the
98 username (eg. Special:ActiveUsers/Username)
99 * New JavaScript variable wgPageContentLanguage
100 * Added new debugging toolbar, enabled with $wgDebugToolbar
101 * Differences in the history page now uses slightly better colors for people
102 perceiving colors differently. Colors comes from the French Wikipedia.
103 * (bug 32879) Upgrade jQuery to 1.7.1
104 * jQuery UI upgraded to 1.8.17
105 * Extensions can use the 'Language::getMessagesFileName' hook to define new
106 languages using messages files outside of core.
107 * (bug 32512) Include 'associated namespace' checkbox on Special:Contributions
108 * Added $wgSend404Code, true by default, which can be set to false to send a
109 200 status code instead of 404 for nonexistent articles.
110 * (bug 33447) Link to the broken image tracking category from Special:Wantedfiles.
111 * (bug 27724) Add timestamp to job queue.
112 * (bug 30339) Implement SpecialPage for running javascript tests. Disabled by default, due to
113 tests potentially being harmful, not to be run on a production wiki.
114 Enable by setting $wgEnableJavaScriptTest to true.
115 * Extensions can use the RequestContextCreateSkin hook to override what skin is
116 loaded in some contexts.
117 * (bug 33456) Show $wgQueryCacheLimit on cached query pages.
118 * (bug 10574) Add an option to allow all pages to be exported by Special:Export.
119 * mediawiki.js Message object constructor is now publicly available as mw.Message.
120 * (bug 29309) Allow CSS class per tooltip (tipsy).
121 * (bug 33565) Add accesskey/tooltip to submit buttons on Special:EditWatchlist.
122 * (bug 17959) Inline rendering/thumbnailing for Gimp XCF images.
123 * (bug 27775) Namespace has it's own XML tag in the XML dump file.
124 * (bug 30513) Redirect tag is now resolved in XML dump file.
125 * sha1 xml tag added to XML dump file.
126 * (bug 33646) Badtitle error page now emits a 400 HTTP status.
127
128 === Bug fixes in 1.19 ===
129 * $wgUploadNavigationUrl should be used for file redlinks if.
130 $wgUploadMissingFileUrl is not set. The first was used for this
131 until the second was introduced in 1.17.
132 * (bug 27894) Move 'editondblclick' event listener down from body to
133 div#bodyContent.
134 * (bug 30172) The check for posix_isatty() in maintenance scripts did not detect
135 when the function exists but is disabled. Introduced
136 Maintenance::posix_isatty().
137 * (bug 30264) Changed installer-generated LocalSettings.php to use
138 require_once() instead require() for included extensions.
139 * Do not convert text in the user interface language to another script.
140 * (bug 26283) Previewing user JS/CSS pages didn't load other user JS/CSS pages.
141 * (bug 11374) Improved diff readability for colorblind people.
142 * (bug 26486) ResourceLoader modules with paths to nonexistent files cause PHP
143 warnings/notices to be thrown.
144 * (bug 30335) Fix for HTMLForms using GET breaking when non-friendly URLs are
145 used.
146 * (bug 28649) Avoiding half truncated multi-byte unicode characters when
147 truncating log comments.
148 * Show --batch-size option in help of maintenance scripts that support it
149 * (bug 4381) Magic quotes cleaning was not comprehensive, key strings were not
150 unescaped.
151 * (bug 23057) Importers no longer can 'edit' or 'create' a fully-protected page by
152 importing a new revision into it.
153 * Allow moving the associated talk pages of subpages even if the base page
154 has no subpage.
155 * Per page edit-notices now work in namespaces without subpages enabled.
156 * (bug 30245) Use the correct way to construct a log page title.
157 * (bug 31081) $wgEnotifUseJobQ caused many unnecessary jobs to be queued.
158 * (bug 30202) File names are now restricted on upload to 240 bytes, because of
159 restrictions on some of the database fields.
160 * Timezones are now recognised in user preferences when offset is different
161 due to DST.
162 * (bug 31692) "summary" parameter now also work when undoing revisions.
163 * (bug 18823) "move succeeded" text displayed bluelinks even when redirect was
164 suppressed.
165 * (bug 19186) Special:UserLogin's title on Special:SpecialPages now says
166 "create account" when the user cannot create an account.
167 * (bug 31818) 'usercreated' message now supports GENDER.
168 * (bug 32022) Our phpunit.php script can now be executed from another directory.
169 * (bug 26020) Setting $wgEmailConfirmToEdit to true no longer removes diffs
170 from recent changes feeds.
171 * (bug 30232) add current time to message wlnote on Special:Watchlist.
172 * (bug 29110) $wgFeedDiffCutoff did not affect new pages.
173 * (bug 32168) Add wfRemoveDotSegments for use in wfExpandUrl.
174 * (bug 32358) Do not display "No higher resolution available" for dimensionless
175 files (like audio files).
176 * (bug 32168) Add wfAssembleUrl for use in wfExpandUrl.
177 * (bug 32168) fixed - wfExpandUrl expands dot segments now.
178 * (bug 31535) Upload comments now truncated properly, and don't have brackets.
179 * (bug 32086) Special:PermanentLink now show an error message when no subpage
180 was specified.
181 * (bug 30368) Special:Newpages now shows the new page name for moved pages.
182 * (bug 1697) The way to search blocked usernames in block log should be clearer.
183 * (bug 29747) eAccelerator shared memory caching has been removed since it is
184 now disabled by default and is buggy. APC, XCache and WinCache are not affected.
185 * Installer now refuses to install if php was not compiled with Ctype support.
186 * (bug 29475) Remove "trackback" feature entirely from core.
187 * (bug 32665) Special:BlockList prefills the username in the input field if
188 using the Special:BlockList/username URL.
189 * (bug 27721) Make JavaScript variables wgSeparatorTransformTable and
190 wgDigitTransformTable depend on page content language so the sort script
191 sorts correctly more often.
192 * (bug 32230) Expose wgRedirectedFrom in JavaScript.
193 * (bug 31212) History tab not collapsed when the screen is narrow.
194 * (bug 15521) Use new section summary when the action of adding a new section
195 also happens to create the page.
196 * (bug 32960) Remove EmailAuthenticationTimestamp from database when a
197 email address is removed.
198 * (bug 32414) Empty page get a empty bytes attribute in Export/Dump.
199 * (bug 33101) Viewing a User or User talk of username resembling IP ending
200 with .xxx causes Internal error.
201 * Warning about undefined index in certain situations when $wgLogRestrictions
202 causes the first log type requested to be removed but not the others
203 * Use separate message ('prefixindex-namespace') for title of
204 Special:PrefixIndex rather then re-using Special:AllPages's allinnamespace.
205 * (bug 33156) Special:Block now allows you to confirm you want to block yourself
206 when using non-normalized username.
207 * (bug 33246) News icon shown for news:// URLs but not for news: URLs
208 * (bug 33305) Make mw.util.addCSS resistant to IE's @font-face bug by setting
209 cssText after DOM insertion.
210 * (bug 30711) When adding a new section to a page with section=new, the text is
211 now always added to the current version of the page.
212 * (bug 31719) Fix uploads of SVGs exported by Adobe Illustrator by expanding
213 XML entities correctly.
214 * (bug 30914) Embeddable ResourceLoader modules (user.options, user.tokens)
215 should be loaded in <head> for proper dependency resolution.
216 * (bug 32702) Removed method Skin::makeGlobalVariablesScript() has been readded
217 for backward compatibility.
218 * (bug 31469) Make sure tracking category messages expand variables like
219 {{NAMESPACE}} relative to correct title.
220 * (bug 30485 and bug 33434) Style rules for wikitable are now more specific and
221 prevent inheritance to nested tables which caused various issues.
222 * (bug 33454) ISO-8601 week-based year number (format character 'o') is now
223 calculated correctly with respect to timezone.
224 * (bug 32219) InstantCommons now fetches content from Wikimedia Commons using
225 HTTPS when the local wiki is served over HTTPS.
226 * (bug 33525) clearTagHooks doesn't clear function hooks.
227 * (bug 33523) Function tag hooks don't appear on Special:Version.
228 * Files with IPTC blocks we can't read no longer prevent extraction of exif
229 or other metadata.
230 * (bug 33587) Remove action "historysubmit" from history pages.
231 * (bug 25800) mw.config wgAction should contain the actually performed action instead
232 of whatever the query value contains.
233 * (bug 4438) Add CSS hook for current WikiPage action.
234 * (bug 33703) Common border-bottom color for <abbr> should inherit default (text) color.
235 * (bug 33819) Display file sizes in appropriate units.
236 * (bug 32948) {{REVISIONID}} and related variables are no longer blank after doing
237 a null edit.
238 * (bug 33880) $wgUsersNotifiedOnAllChanges should not send e-mail to user who made
239 the edit.
240 * (bug 33902) Decoding %2B with mw.Uri.decode results in ' ' instead of +
241 * (bug 33762) QueryPage-based special pages no longer misses *-summary message.
242
243 === API changes in 1.19 ===
244 * Made action=edit less likely to return "unknownerror", by returning the actual error
245 message (which may have come from a hook call or similar)
246 * (bug 19838) siprop=interwikimap can now use the interwiki cache.
247 * (bug 29748) Add API search prefix support.
248 * (bug 29684) Set forgotten parameter types in ApiQueryIWLinks.
249 * (bug 29685) do not output NULL parentid with list=deletedrevs&drprop=parentid.
250 * siprop=interwikimap and siprop=languages can use silanguagecode to have
251 a best effort language name translation. Use CLDR extension for best result.
252 * (bug 30230) action=expandtemplates should not silently override invalid title
253 inputs.
254 * (bug 18634) Create API to fetch MediaWiki's language fallback tree structure.
255 * (bug 26885) Allow show/hide of account blocks, temporary blocks and single IP
256 address blocks for list=blocks.
257 * (bug 30591) Add support to only return keys in ApiAllMessages.
258 * The API now respects $wgShowHostnames and won't share the hostname in
259 severedby if it's set to false.
260 * wlexcludeuser parameter added to ApiFeedWatchlist.
261 * (bug 7304) Links on redirect pages no longer cause the redirect page to show
262 up as a redirect to the linked page on Special:Whatlinkshere.
263 * (bug 32609) API: Move captchaid/captchaword of action=edit from core
264 to Captcha extension(s).
265 * Added 'APIGetDescription' hook.
266 * (bug 32688) Paraminfo for parameter "generator" of the query module shows too
267 many types.
268 * (bug 32415) Empty page get no size attribute in API output.
269 * (bug 31759) Undefined property notice in querypages API.
270 * (bug 32495) API should allow purge by pageids.
271 * (bug 33147) API examples should explain what they do.
272 * (bug 33482) Api incorrectly calls ApiBase::parseMultiValue if allowed
273 values is given as an array.
274 * (bug 32948) {{REVISIONID}} and related variables are no longer blank after
275 calling action=purge&forcelinkupdate.
276
277 === Languages updated in 1.19 ===
278
279 MediaWiki supports over 350 languages. Many localisations are updated
280 regularly. Below only new and removed languages are listed, as well as
281 changes to languages because of Bugzilla reports.
282
283 * Canadian English (en-ca) (new).
284 * Norwegian (bokmål) (nb) (renamed from no).
285 * Uighur (Latin) (ug-latn) was incorrectly marked as right-to-left language.
286 * (bug 30217) Make pt-br a fallback of pt.
287 * (bug 31193) Set fallback language of Assamese from Bengali to English.
288 * Update date format for dsb and hsb: month names need the genitive.
289 * (bug 28643) Serbian variant conversion improvements (Nikola Smolenski).
290 * (bug 29405, bug 30809) Lower diacritics are invisible in titles in Indic
291 languages Assamese, Bengali, Hindi, Malyalam and Odiya.
292 * (bug 32826) Titles in indic languages are partially cut.
293 * (bug 33367) Gendered namespaces for Czech.
294 * (bug 33014) Language::formatSize()/formatBitrate() should be able to deal
295 with larger numbers (tera-yotta).
296
297 === Other changes in 1.19 ===
298 * BREAKING CHANGE: Legacy global array 'ta' and global function 'akeytt' have
299 been removed from wikibits.js
300 * jquery.mwPrototypes module was renamed to jquery.mwExtension.
301 * The maintenance script populateSha1.php was renamed to the more concise
302 populateImageSha1.php.
303 * The Client-IP header is no longer checked for when trying to resolve a client's
304 real IP address.
305 * (bug 22096) Although IE5.x and below was already unsupported officially, stylesheets
306 existing exclusively for IE5.0 and IE5.5 have now been removed (which were in skins
307 'chick' and 'monobook').
308 * The constructor for CategoryView has changed, the second parameter is now a
309 Context source and is required.
310 * The Title::escape{Local,Full,Canonical}URL methods are deprecated, please use
311 proper html building methods to escape the normal get{...}URL methods instead.
312 * The $variant arguments in the Title::get{Local,Full,Link,Canonical}URL methods
313 have been replaced with a secondary query argument.
314 * The $variant argument in the hooks for the Title::get{Local,Full,Link,Canonical}URL
315 methods have been removed, the variant is now part of the $query argument.
316 * Removed Title::isValidCssJsSubpage(), deprecated since 1.17 in favor of
317 using Title::isCssJsSubpage() or checking Title::isWrongCaseCssJsPage().
318 * Support for the deprecated hook MagicWordMagicWords was removed.
319 * The Xml::namespaceSelector method has been deprecated, please use
320 Html::namespaceSelector instead (note that the parameters have changed also).
321
322 == Compatibility ==
323
324 MediaWiki 1.19 requires PHP 5.2.3. PHP 4 is no longer supported.
325
326 MySQL is the recommended DBMS. PostgreSQL or SQLite can also be used, but
327 support for them is somewhat less mature. There is experimental support for IBM
328 DB2 and Oracle.
329
330 The supported versions are:
331
332 * MySQL 5.0.2 or later
333 * PostgreSQL 8.3 or later
334 * SQLite 3.3.7 or later
335 * Oracle 9.0.1 or later
336
337 == Upgrading ==
338
339 1.19 has several database changes since 1.18, and will not work without schema
340 updates.
341
342 As of 1.19 several JavaScript interfaces that were deprecated or superseeded in
343 MediaWiki 1.17, MediaWiki 1.16 or even earlier have been removed. They are
344 listed at the top of the "Other changes" list as a "BREAKING CHANGE".
345
346 If upgrading from before 1.11, and you are using a wiki as a commons
347 repository, make sure that it is updated as well. Otherwise, errors may arise
348 due to database schema changes.
349
350 If upgrading from before 1.7, you may want to run refreshLinks.php to ensure
351 new database fields are filled with data.
352
353 If you are upgrading from MediaWiki 1.4.x or earlier, some major database
354 changes are made, and there is a slightly higher chance that things could
355 break. Don't forget to always back up your database before upgrading!
356
357 See the file UPGRADE for more detailed upgrade instructions.
358
359 For notes on 1.18.x and older releases, see HISTORY.
360
361 == Online documentation ==
362
363 Documentation for both end-users and site administrators is available on
364 MediaWiki.org, and is covered under the GNU Free Documentation License (except
365 for pages that explicitly state that their contents are in the public domain):
366
367 http://www.mediawiki.org/wiki/Documentation
368
369 == Mailing list ==
370
371 A mailing list is available for MediaWiki user support and discussion:
372
373 http://lists.wikimedia.org/mailman/listinfo/mediawiki-l
374
375 A low-traffic announcements-only list is also available:
376
377 http://lists.wikimedia.org/mailman/listinfo/mediawiki-announce
378
379 It's highly recommended that you sign up for one of these lists if you're
380 going to run a public MediaWiki, so you can be notified of security fixes.
381
382 == IRC help ==
383
384 There's usually someone online in #mediawiki on irc.freenode.net.