=== Configuration changes in 1.18 ===
* The WantedPages::getSQL hook has been removed and replaced with
WantedPages::getQueryInfo. This may break older extensions.
+* The SkinTemplateBuildContentActionUrlsAfterSpecialPage,
+ SkinTemplateContentActions and SkinTemplateTabs hooks have been removed in
+ favor of SkinTemplateNavigation and SkinTemplateNavigation::SpecialPage
* $wgUseCombinedLoginLink controls whether to output a combined
login / create account link in the personal bar, or to output separate login
and create account links.
* New hook "Collation::factory" to allow extensions to create custom
category collations.
* $wgGroupPermissions now supports per namespace permissions.
+* $wgEnableAutoRotation enables or disables auto-rotation. Leaving it set to
+ null will cause MediaWiki to determine if auto-rotation is available.
=== New features in 1.18 ===
* BREAKING CHANGE: action=watch / action=unwatch now requires a token.
+* (bug 27860) Minor edit after clicking 'new section' tab
+Now the "This is a minor edit" checkbox is not available when you
+create a page or new section.
* (bug 8130) Query pages should limit to content namespaces, not just main
namespace.
* Search suggestions (other than in the Vector skin) will now use the HTML5
* (bug 29441) Expose CapitalLinks config in JS to allow modules to properly
handle titles on case-sensitive wikis.
* (bug 29397) Implement mw.Title module in core.
-* In MySQL 4.1.9+ with replication enabled, the slave lag should come from
- SHOW SLAVE STATUS instead of SHOW PROCESSLIST.
+* In MySQL 4.1.9+ with replication enabled, fetch the slave lag from SHOW SLAVE
+ STATUS instead of SHOW PROCESSLIST. This ensures that lag is reported
+ correctly in the case where there are no write events occurring. Note that
+ the DB user now needs to have the REPLICATION CLIENT privilege if you are
+ using replication.
* Language codes in $wgDummyLanguageCodes are now excluded on localization
statistics (maintenance/language/transstat.php)
* (bug 29586) Make the (next 200) links on categories link directly to
the relevant section of the category.
* (bug 29109) Allow the automatic edit summary for redirect creation
show the first bit of the new redirect page.
-* (bug 5800) Added $formCallback as a parameter to the hook
- EditPage::showEditForm:initial.
* (bug 29723) mw.util.wikiGetlink() now defaults to wgPageName.
* (bug 29680) Add GetDefaultSortkey hook to override the default sortkey.
* (bug 16699) {{#language:}} accepts second parameter to specify the language in
* AjaxCategories: Easily add, edit or delete categories on article pages.
Suggests possible categories when typing, all saves are done via AJAX.
Supports editing of multiple categories and then saving them in one batch.
+* $wgAutopromoteOnce was added, allowing for users to be automatically promoted to explicit usergroups.
+ If a group is removed from a user via Special:UserRights, it will not automatically be re-added.
+ Configuration is similar to $wgAutopromote (see DefaultSettings.php)
+* The PerformRetroactiveAutoblock hook was added to allow overriding or complementing
+ retroactive autoblock handling. This runs when blocking a user with the 'autoblock' option.
+* MediaWiki now supports using protocol-relative URLs in links, interwiki
+ targets and $wgServer.
+* Introduced $wgVaryOnXFPForAPI which will cause the API to send
+ Vary: X-Forwarded-Proto headers.
+* New maintenance script to refresh image metadata (maintenance/refreshImageMetadata.php)
+* (bug 30722) Add an identity collation that sorts things based on what the
+ unicode code point is (aka pre-1.17 behaviour)
+* (bug 30940) Add a hook in User:getDefaultOptions.
+ To give extensions a better and more flexible way of providing default
+ values for preferences a hook has been introdiced in User:getDefaultOptions().
+ Setting preferences in $wgDefaultUserOptions still work fine, but when reading
+ them (i.e. with array_keys) to get a list of all preferences, then
+ $wgDefaultUserOptions should no longer be used as it will contain those set via
+ User:getDefaultOptions().
+* (bug 30497) Add client-nojs and client-js classes on document element
+ to let styles easily hide or show things based on general JS availability
+* (bug 31293) If Special:Userlogin is loaded over HTTPS, display
+ MediaWiki:loginend-https instead of MediaWiki:loginend, if it's not empty.
+ Same for signupend on the account creation page.
+* (bug 31233) New OutputPage::addJsConfigVars() method to make the output page specific
+ mw.config map extendable.
=== Bug fixes in 1.18 ===
+* (bug 27860) Minor edit after clicking 'new section' tab
* mw.util.getScript has been implemented (like wfScript in GlobalFunctions.php)
* (bug 23119) WikiError class and subclasses are now marked as deprecated.
* (bug 10871) Javascript and CSS pages in MediaWiki namespace are no longer
* If an edit summary exceeds 250 bytes and is truncated, add an ellipse.
* (bug 26638) Database error pages display correctly in RTL languages.
* (bug 26187) Confirmrecreate no longer parses the edit summary.
-* (bug 25506) Exception is thrown if OutputPage::parse is called inside a tag
- hook, which would reset parser state.
* (bug 26208) Mark directionality of some interlanguage links.
* (bug 26034) Make the "View / Read" tab in content_navigation style tabs remain
selected when the action is "purge".
environments
* (bug 14977) Fixed $wgServer detection in cases where an IPv6 address is used
as the server name.
-* (bug 19725) Do not list suppressed edits in the "View X deleted edits" link
- if user cannot view suppressed edits.
* The View X deleted revisions is now shown again on Special:Upload.
* (bug 29071) mediawiki.action.watch.ajax.js should pass uselang to API.
* (bug 28868) Show total pages in the subtitle of an image on the
* (bug 27410) The tag filter on a history page is now within a <label> element
* (bug 29779) DairikiDiff/WikiDiff <ins> and <del> should undo browser default
styling (strike/underline).
-* Translate the block expiry date
* (bug 28630) Add iwlinks, langlinks, redirect to
RefreshLinks::deleteLinksFromNonexistent
* (bug 29797) Error: "Tried to load block with invalid type" when subpages
to the FCKEditor extension.
* (bug 28762) Resizing to specified height broken for very thin images
* (bug 29959) Installer fatal when cURL and allow_url_fopen is disabled and user
- tries to subsribe to mediawiki-announce
+ tries to subsribe to mediawiki-announce.
+* (bug 27427) mw.util.getParamValue shouldn't return value from hash even if
+ param is only present in hash.
+* Installer checked for magic_quotes_runtime instead of register_globals.
+* (bug 30131) XCache with variable caching disabled no longer used for variable caching (CACHE_ACCEL)
+* $wgSVGMaxSize is now applied to the smaller of width or height, making very wide pano/timeline/diagram SVGs renderable at saner sizes
+* (bug 30219) The page shown when LocalSettings.php does not exist was broken on
+ Windows servers.
+* (bug 30074) Moving user JS subpages resulted in JS errors because
+ #REDIRECT [[Foo]] is invalid JS
+* Tracking categories are no longer shown in footer for special pages
+* $wgOverrideSiteFeed no longer double escapes urls.
+* The preprocessor no longer fails with a PHP warning about XML_PARSE_HUGE when
+ processing complex pages using newer versions of libxml2.
+* (bug 28545) When using the uca-default collation, sortkey's starting with a
+ space (U+20) will sort under an invisible header like in 1.16 rather than a U+6DE
+* (bug 30192) Thumbnails of archived files are now deleted
+* (bug 30843) mediawiki.Title should not convert extensions (anything after the
+ last full stop) to lower case)
+* (bug 31213) Exception thrown when trying to move file cross-namespace
+* (bug 18424) Special:Prefixindex and Special:Allpages paging links are
+ really small, and somewhat inconsistent with each other.
+* (bug 30466) Entries in iwlinks table are now cleared when moving a page over
+ redirect
+* (bug 31674) Can't edit watchlist if it contains special pages
=== API changes in 1.18 ===
* BREAKING CHANGE: action=watch now requires POST and token.
* (bug 28817) Add reference help page link to API Modules
* (bug 29935) Improve formatting of examples in ApiParamInfo
* (bug 29938) list=users&usprop=rights shows rights the user doesn't have
+* (bug 24781) The API will include an XML namespace if the includexmlnamespace
+ parameter is set.
=== Languages updated in 1.18 ===
* Jamaican Creole English (jam) (new).
* Khowar (khw) (new).
* Liv (liv) (new).
+* Kichwa (qug) (new).
* Tokipona (tp) (removed) 'tokipona' is still valid.
* (bug 17160) Gender specific display text for User namespace.
* Link trail added for sl and sh.
-* (bug 27633) Add characters to linkTrail for Potuguese (pt and pt-br).
+* (bug 27633) Add characters to linkTrail for Portuguese (pt and pt-br).
* (bug 27426) Set $namespaceGenderAliases for Arabic (ar).
* (bug 27385) Set Polish $namespaceGenderAliases.
* (bug 27681) Set $namespaceGenderAliases for Portuguese (pt and pt-br).
* Aromanian (rup) (renamed from "rua-rup").
* Kashmiri (ks) split into Kashmiri (Perso-Arabic) (ks-arab) and Kashmiri
(Devanagari) (ks-deva). Defaults to ks-arab.
+* (bug 30864) Use bengali numerals for <ol> for Assamese
+* (bug 30817) Restored linktrail for kk (Kazakh)
+* (bug 27398) Add $wgExtraGenderNamespaces for configured gendered namespaces
+* (bug 30846) New LanguageOs class
=== Other changes in 1.18 ===
* Removed legacy wgAjaxWatch javascript global object, no longer in use.
* (bug 28556) Upload support for MacBinary files has been removed (Used by
Internet Explorer 5 for Mac OS 9)
+* On wiki farm setups using $wgConf, 'wgCanonicalServer' is now expected to be
+ set for all wikis. This was already the case for 'wgServer'.
== Compatibility ==