Merge "f-prot isn't so open now, so might aswell not advertise it in DefaultSetttings...
[lhc/web/wiklou.git] / RELEASE-NOTES-1.20
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.20 ==
7
8 THIS IS NOT A RELEASE YET
9
10 MediaWiki 1.20 is an alpha-quality branch and is not recommended for use in
11 production.
12
13 === PHP 5.3 now required ===
14 Since 1.20, the lowest supported version of PHP is now 5.3.2. Please
15 upgrade PHP if you have not done so prior to upgrading MediaWiki.
16
17 === Configuration changes in 1.20 ===
18 * $wgGitRepositoryViewers defines a mapping from Git remote repository to the
19 Gitweb instance URL used in Special:Version.
20 * `$wgUsePathInfo = true;` is no longer needed to make $wgArticlePath work on servers
21 using like nginx, lighttpd, and apache over fastcgi. MediaWiki now always extracts
22 path info from REQUEST_URI if it's available.
23 * The user right 'upload_by_url' is no longer given to sysops by default.
24 This only affects installations which have $wgAllowCopyUploads set to true.
25 * Removed f-prot support from $wgAntivirusSetup.
26
27 === New features in 1.20 ===
28 * Added TitleIsAlwaysKnown hook which gets called when determining if a page exists.
29 * Added NamespaceIsMovable hook which gets called when determining if pages in a
30 certain namespace can be moved.
31 * (bug 32341) Add upload by URL domain limitation.
32 * &useskin=default will now always display the default skin. Useful for users with a
33 preference for the non-default skin to look at something using the default skin.
34 * (bug 27619) Remove preference option to display broken links as link?
35 * (bug 34896) Update jQuery JSON plugin to v2.3 (2011-09-17).
36 * (bug 34302) Add CSS classes to email fields in user preferences.
37 * Introduced $wgDebugDBTransactions to trace transaction status (currently PostgreSQL only).
38 * (bug 23795) Add parser itself to ParserMakeImageParams hook.
39 * Introduce a cryptographic random number generator source api for use when
40 generating various tokens.
41 * (bug 30963) Option on Special:Prefixindex and Special:Allpages to not show redirects.
42 * (bug 18062) New message when edit or create the local page of a shared file.
43 * (bug 22870) Separate interface message when creating a page.
44 * (bug 17615) nosummary option should be reassigned on preview/captcha.
45 * (bug 34355) Add a variable and parser function for the namespace number.
46 * (bug 35649) Special:Version now shows hashes of extensions checked out from git.
47 * (bug 35728) Git revisions are now linked on Special:Version.
48 * "Show Changes" on default messages shows now diff against default message text
49 * (bug 23006) create #speciale parser function.
50 * generateSitemap can now optionally skip redirect pages.
51 * (bug 27757) New API command just for retrieving tokens (not page-based).
52 * Added GitViewers hook for extensions using external git repositories to have a web-based
53 repository viewer linked to from Special:Version.
54 * Memcached debug logs can now be sent to their own file logs by setting
55 $wgDebugLogFile['memcached'] to some filepath.
56 * (bug 35685) api.php URL and other entry point URLs are now listed on
57 Special:Version
58 * Edit notices can now be translated.
59 * (bug 35680) jQuery upgraded to 1.7.2.
60 * jQuery UI upgraded to 1.8.21.
61 * (bug 22887) Add warning and tracking category for preprocessor errors
62 * (bug 31704) Allow selection of associated namespace on the watchlist
63 * (bug 5445) Now remove autoblocks when a user is unblocked.
64 * Added $wgLogExceptionBacktrace, on by default, to allow logging of exception
65 backtraces.
66 * Added device detection for determining device capabilities.
67 * QUnit.newMwEnvironment now supports passing a custom setup and/or teardown function.
68 Arguments signature has changed. First arguments is now an options object of which
69 'config' can be a property. Previously 'config' itself was the first and only argument.
70 * New getCreator and getOldestRevision methods added to WikiPage class
71 * (bug 4220) the XML dump format schema now have unique identity constraints
72 for page and revision identifiers. Patch by Elvis Stansvik.
73 * (bug 35705) QUnit upgraded from v1.2.0 to v1.8.0.
74 * cleanupSpam.php now can delete spam pages if --delete was specified instead of blanking
75 them.
76 * Added new hook ChangePasswordForm to allow adding of additional fields in Special:ChangePassword
77 * Added new function getDomain to AuthPlugin for getting a user's domain
78 * (bug 23427) New magic word {{PAGEID}} which gives the current page ID.
79 Will be null on previewing a page being created.
80 * (bug 37627) UserNotLoggedIn() exception to show a generic error page whenever
81 a user is not logged in.
82 * Watched status in changes lists are no longer indicated by <strong></strong>
83 tags with class "mw-watched". Instead, each line now has a class
84 "mw-changeslist-line-watched" or "mw-changeslist-line-not-watched", and the
85 title itself is surrounded by <span></span> tags with class "mw-title".
86 * Added ContribsPager::reallyDoQuery hook allowing extensions to data to MyContribs
87
88 === Bug fixes in 1.20 ===
89 * (bug 30245) Use the correct way to construct a log page title.
90 * (bug 34237) Regenerate an empty user_token and save to the database
91 when we try to set the user's cookies for login.
92 * (bug 32210) New edit emails for watched pages always provide a link to the
93 edit which triggered the mail.
94 * (bug 12021) Added user talk link on Special:Listusers.
95 * (bug 34445) section edit and TOC hide/show links are excluded from selection and
96 copy/paste on supporting browsers.
97 * (bug 34428) Fixed incorrect hash mismatch errors in the DiffHistoryBlob
98 history compression method.
99 * (bug 34702) Localised parentheses are now used in more special pages.
100 * (bug 34723) When editing a script page on a RTL wiki the textbox should be LTR.
101 * (bug 34762) Calling close() on a DatabaseBase object now clears the connection.
102 * (bug 34863) Show deletion log extract on non-existent file pages if applicable.
103 * (bug 28019) Let ?preloadtitle=foo be passed on to target of
104 Special:MyPage and Special:MyTalk.
105 * (bug 34929) Show the correct diff when a section edit is rejected by the spam
106 filter.
107 * (bug 15816) Add a switch for SETting the search_path (Postgres).
108 * (bug 34521) Returning to the previous page after logging in loses any array-
109 valued parameters in the query string.
110 * (bug 34735) Updated compressOld.php documentation to mention the different
111 usages of -s and -n parameters depending on compression type.
112 * (bug 13896) Rendering of devanagari numbers in automatic '#' number lists.
113 * (bug 33689) Upgrade to 1.19 on Postgres fails due to incomplete query when.
114 trying to defer foreign key for externallinks.
115 * (bug 32748) Printer friendly version of article decode Unicode chars as a
116 pretty IRI in footer.
117 * Removed white border around thumbnails in galleries.
118 * (bug 31236) "Next" and "Previous" buttons are shown incorrectly in
119 an RTL environment.
120 * (bug 35749) Updated maintenance/checkSyntax.php to use Git instead of
121 Subversion when invoked with the --modified option.
122 * (bug 35069) On history pages, the " . . " separator after the number of
123 characters changed in a revision is now suppressed if no text would follow.
124 * (bug 18704) Add a unique CSS class or ID to the tagfilter table row at RecentChanges
125 * (bug 33564) transwiki import sometimes result in invalid title.
126 * (bug 35572) Blocks appear to succeed even if query fails due to wrong DB structure
127 * (bug 31757) Add a word-separator between help-messages in HTMLForm
128 * (bug 30410) Removed deprecated $wgFilterCallback and the 'filtered' API error.
129 * (bug 32604) Some messages needs escaping of wikitext inside username.
130 * (bug 36537) Rename wfArrayToCGI to wfArrayToCgi for consistency with wfCgiToArray.
131 * (bug 25946) The message on the top of Special:RecentChanges is now displayed.
132 in user language instead of content language.
133 * (bug 35264) Wrong type used for <ns> in export.xsd
134 * (bug 24985) Use $wgTmpDirectory as the default temp directory so that people
135 who don't have access to /tmp can specify an alternative.
136 * (bug 27283) SqlBagOStuff breaks PostgreSQL transactions.
137 * (bug 35727) mw.Api ajax() should put token parameter last.
138 * (bug 37708) mw.Uri.clone() should make a deep copy.
139 * (bug 38024) ResourceLoader should not create empty stylesheets for modules
140 that don't have stylesheets.
141 * (bug 36812) Special:ActiveUsers "Hide bots" should hide users from any group
142 having the "bot" user right, instead of just the default "bot" user group.
143 * (bug 35082) mw.util.addPortletLink incorrectly adds link to mutiple <ul> tags.
144 * (bug 36495) Sanitizer::fixDeprecatedAttributes should convert "align"
145 attribute to margin or float instead of text-align (for non-table-cells).
146 * (bug 36991) jquery.tablesorter should extract date sort format from date
147 string instead of global config. Dates like "April 1 2012" and "1 April 2012"
148 now sort correctly regardless of the content language's DefaultDateFormat.
149 * (bug 31895) mw.loader mode now correct when triggered from a $.fn.ready
150 handler that is bound before mediawiki.js's handler (e.g. browser-userscripts
151 like greasemonkey).
152
153 === API changes in 1.20 ===
154 * (bug 34316) Add ability to retrieve maximum upload size from MediaWiki API.
155 * (bug 34313) MediaWiki API intro message about "HTML format" should mention
156 the format parameter.
157 * (bug 32384) Allow descending order for list=watchlistraw.
158 * (bug 31883) Limit of bkusers of list=blocks and titles of action=query is not documented in API help.
159 * (bug 32492) API now allows editing using pageid.
160 * (bug 32497) API now allows changing of protection level using pageid.
161 * (bug 32498) API now allows comparing pages using pageids.
162 * (bug 30975) API import of pages with invalid characters in this wiki leads to Fatal Error.
163 * (bug 30488) API now allows listing of backlinks/embeddedin/imageusage per pageid
164 * (bug 34927) Output media_type for list=filearchive
165 * (bug 28814) add properties to output of action=parse
166 * (bug 33224) add variants of content language to meta=siteinfo
167 * (bug 36761) "Mark pages as visited" now submits previously established filter options
168 * (bug 32643) action=purge with forcelinkupdate no longer crashes when ratelimit is reached
169 * The paraminfo module now also contains result properties for most modules
170 * (bug 32348) Allow descending order for list=alllinks
171 * (bug 31777) Upload unknown error ``fileexists-forbidden''
172
173 === Languages updated in 1.20 ===
174
175 MediaWiki supports over 350 languages. Many localisations are updated
176 regularly. Below only new and removed languages are listed, as well as
177 changes to languages because of Bugzilla reports.
178
179 * Emilian (egl) added.
180 * Tornedalen Finnish (fit) added.
181 * Mizo (lus) added.
182 * Santali (sat) added.
183 * (bug 34192) Namespace gender aliases for Albanian languages (sq & aln).
184 * (bug 35541) Namespace gender aliases for Croatian (hr).
185 * (bug 36012) Space in $separatorTransformTable should be non-breaking in
186 Portuguese, Esperanto and Udmurt.
187
188 === Other changes in 1.20 ===
189 * The user_token field is now left empty until a user attempts to login and
190 cookies need to be set. It is also now possible to reset every user's
191 user_token simply by clearing the values in the user_token column.
192 * Removed ./tests/qunit/index.html from core. It wasn't actively maintained and
193 has been made obsolete when [[Special:JavaScriptTest/qunit]] was introduced,
194 which actually uses ResourceLoader, LocalSettings and the Skin.
195 * Removed $wgDBtransactions global. This was only checked in one class
196 and only applies to MyISAM or similar DBs. Those should only be used
197 for archived sites anyway. We can't get edit conflicts on such sites,
198 so the WikiPage code wasn't useful there either.
199
200 == Compatibility ==
201
202 MediaWiki 1.20 requires PHP 5.3.2. PHP 4 is no longer supported.
203
204 MySQL is the recommended DBMS. PostgreSQL or SQLite can also be used, but
205 support for them is somewhat less mature. There is experimental support for IBM
206 DB2 and Oracle.
207
208 The supported versions are:
209
210 * MySQL 5.0.2 or later
211 * PostgreSQL 8.3 or later
212 * SQLite 3.3.7 or later
213 * Oracle 9.0.1 or later
214
215 == Upgrading ==
216
217 1.20 has several database changes since 1.19, and will not work without schema
218 updates.
219
220 If upgrading from before 1.11, and you are using a wiki as a commons
221 repository, make sure that it is updated as well. Otherwise, errors may arise
222 due to database schema changes.
223
224 If upgrading from before 1.7, you may want to run refreshLinks.php to ensure
225 new database fields are filled with data.
226
227 If you are upgrading from MediaWiki 1.4.x or earlier, some major database
228 changes are made, and there is a slightly higher chance that things could
229 break. Don't forget to always back up your database before upgrading!
230
231 See the file UPGRADE for more detailed upgrade instructions.
232
233 For notes on 1.19.x and older releases, see HISTORY.
234
235 == Online documentation ==
236
237 Documentation for both end-users and site administrators is available on
238 MediaWiki.org, and is covered under the GNU Free Documentation License (except
239 for pages that explicitly state that their contents are in the public domain):
240
241 https://www.mediawiki.org/wiki/Documentation
242
243 == Mailing list ==
244
245 A mailing list is available for MediaWiki user support and discussion:
246
247 https://lists.wikimedia.org/mailman/listinfo/mediawiki-l
248
249 A low-traffic announcements-only list is also available:
250
251 https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce
252
253 It's highly recommended that you sign up for one of these lists if you're
254 going to run a public MediaWiki, so you can be notified of security fixes.
255
256 == IRC help ==
257
258 There's usually someone online in #mediawiki on irc.freenode.net.