Do text normalization in dumpTextPass rather than fetchText, to ensure that the force...
[lhc/web/wiklou.git] / RELEASE-NOTES
index 99ea5fd..4be0590 100644 (file)
@@ -19,6 +19,9 @@ Those wishing to use the latest code instead of a branch release can obtain
 it from source control: http://www.mediawiki.org/wiki/Download_from_SVN
 
 === Configuration changes in 1.12 ===
+* Marking edits as bot edits with Special:Contributions?bot=1 now requires the
+  markbotedit permission, rather than the rollback permission previously used.
+  This permission is assigned by default to the sysop group.
 
 === New features in 1.12 ===
 * (bug 10735) Add a warning for non-descriptive filenames at Special:Upload
@@ -44,9 +47,33 @@ it from source control: http://www.mediawiki.org/wiki/Download_from_SVN
 * Removed "Clear" link in watchlist editor tools, as people were afraid to
   click it. Existing clear links will fall back to the raw editor, which is
   very easy to clear your watchlist with.
-* Allow hiding new pages by logged-in users on Special:Newpages
 * (bug 1405) Add wgUseNPPatrol option to control patroling for new articles
   on Special:Newpages
+* LogLine hook added to allow formatting custom entries in Special:Log.
+* Support for Iranian calendar
+* (bug 1401) Allow hiding logged-in users, bots and patrolled pages on Special:Newpages
+* ChangesListInsertArticleLink hook added for adding extra article info to RC.
+* MediaWikiPerformAction hook added for diverting control after the main
+  globals have been set up but before any actions have been taken.
+* BeforeWatchlist hook added for filtering or replacing watchlist.
+* SkinTemplateTabAction hook added for altering the properties of tab links.
+* OutputPage::getRedirect public method added.
+* (bug 11848) Allow URL parameters 'editintro' and 'preload' in Special:Mypage 
+  and Special:Mytalk
+* Add ot=raw to Special:Allmessages
+* Support for Hebrew calendar
+* Support for Hebrew numerals in dates and times
+* (bug 11315) Signatures can be configured in [[MediaWiki:Signature]] and
+  [[MediaWiki:Signature-anon]]
+* Signatures for anonymous users link to Special:Contributions page rather than user page
+* Added --override switch for disabled pages in updateSpecialPages.php
+* Provide a unique message (ipb_blocked_as_range) if unblock of a single IP fails 
+  because it is part of a blocked range.
+* (bug 3973) Use a separate message for the email content when an account is 
+  created by another user
+* dumpTextPass.php can spawn fetchText.php as a subprocess, which should restart
+  cleanly if database connections fail unpleasantly.
+
 
 === Bug fixes in 1.12 ===
 
@@ -123,6 +150,99 @@ it from source control: http://www.mediawiki.org/wiki/Download_from_SVN
 * (bug 11762) Fix native language name of Akan (ak)
 * (bug 11722) Fix inconsistent case in unprotect tabs
 * (bug 11795) Be more paranoid about confirming accept-encoding header is present
+* (bug 11809) Use formatNum() for more numbers
+* (bug 11818) Fix native language name of Inuktitut (iu)
+* Remove all commas when parsing float numbers in sorted tables
+* Limit text field of deletion, protection and user rights changes reasons to
+  255 characters (already restricted in the database)
+* In the deletion default reasons, calculate how much text to get from the
+  article text, rather than getting 150 characters (which may be too much)
+* Add two messages for Special:Blockme which were used but undefined
+* (bug 11921) Support plural in message number_of_watching_users_pageview
+* If an IP address is blocked as part of a rangeblock, attempting to unblock
+  the single IP should not unblock the entire range.
+* (bug 6695) Fix native language name of Southern Sotho (Sesotho) (st)
+* Make action=render follow redirects by default
+* If restricted read access was enabled, whitelist didn't work with special
+  pages which had spaces in theirs names
+* If restricted read access was enabled, requests for non-existing special pages
+  threw an exception
+* Feeds for recent changes now provide correct URLs for the change, not just
+  the page
+* Check for if IP is blocked as part of a range when unblocking (see above bug-
+  fix) was faulty. Now fixed.
+* Fixed wpReason URL parameter to action=delete.
+* Do not force a password for account creation by email
+* Ensure that rate-limiting is applied to rollbacks.
+* Make a better rate-limiting error message (i.e. a normal MW error,
+  rather than an "Internal Server Error").
+* Do not present an image bigger than the source when 'frameless' option is used
+  (to be consistent with the 'thumb' option now)
+
+== Parser changes in 1.12 ==
+
+The parser pass order has changed from
+
+   * Extension tag strip and render
+   * HTML normalisation and security
+   * Template expansion
+   * Main section...
+
+to 
+
+   * Template and extension tag parse to intermediate representation
+   * Template expansion and extension rendering
+   * HTML normalisation and security
+   * Main section...
+
+The main effect of this for the user is that the rules for uncovered syntax 
+have changed. 
+
+Uncovered main-pass syntax, such as HTML tags, are now generally valid, whereas
+previously in some cases they were escaped. For example, you could have "<ta" in
+one template, and "ble>" in another template, and put them together to make a
+valid <table> tag. Previously the result would have been "&lt;table&gt;". 
+
+Uncovered preprocessor syntax is generally not recognised. For example, if you
+have "{{a" in Template:A and "b}}" in Template:B, then "{{a}}{{b}}" will be
+converted to a literal "{{ab}}" rather than the contents of Template:Ab. This
+was the case previously in HTML output mode, and is now uniformly the case in 
+the other modes as well. HTML-style comments uncovered by template expansion
+will not be recognised by the preprocessor and hence will not prevent template
+expansion within them, but they will be stripped by the following HTML security 
+pass.
+
+The rules for template expansion during message transformation were
+counterintuitive, mostly accidental and buggy. There are a few small changes in
+this version: for example, templates with dynamic names, as in "{{ {{a}} }}",
+are fully expanded as they are in HTML mode, whereas previously only the inner
+template was expanded. I'd like to make some larger breaking changes to message
+transformation, after a review of typical use cases.
+
+The header identification routines for section edit and for numbering section
+edit links have been merged. This removes a significant failure mode and fixes a
+whole category of bugs (tracked by bug #4899). Wikitext headings uncovered by
+template expansion or comment removal will still be rendered into a heading tag,
+and will get an entry in the TOC, but will not have a section edit link. 
+HTML-style headings will also not have a section edit link. Valid wikitext
+headings present in the template source text will get a template section edit 
+link. This is a major break from previous behaviour, but I believe the effects 
+are almost entirely beneficial.
+
+The main motivation for making these changes was performance. The new two-pass
+preprocessor can skip "dead branches" in template expansion, such as unfollowed
+#switch cases and unused defaults for template arguments. This provides a
+significant performance improvement in template-heavy test cases taken from 
+Wikipedia. Parser function hooks can participate in this performance improvement
+by using the new SFH_OBJECT_ARGS flag during registration.
+
+The pre-expand include size limit has been removed, since there's no efficient
+way to calculate such a figure, and it would now be meaningless for performance
+anyway. The "preprocessor node count" takes its place, with a generous default
+limit.
+
+The context in which XML-style extension tags are called has changed, so
+extensions which make use of the parser state may need compatibility changes.
 
 === API changes in 1.12 ===
 
@@ -152,36 +272,53 @@ Full API documentation is available at http://www.mediawiki.org/wiki/API
 * (bug 11721) Use a different title for results than for the help page.
 * (bug 11562) Added a user_registration parameter/field to the list=allusers query.
 * (bug 11588) Preserve document structure for empty dataset in backlinks query.
+* Outputting list of all user preferences rather than having to request them by name
+* (bug 11206) api.php should honor maxlag
 
 === Languages updated in 1.12 ===
 
+* Afrikaans (af)
+* Akan (ak) (new)
 * Amharic (am) (new)
 * Aragonese (an)
 * Old English (ang) (new)
 * Arabic (ar)
+* Aramaic (arc)
 * Mapudungun (arn) (new)
+* Assamese (as)
 * Asturian (ast)
+* Aymara (ay)
 * Samogitian (bat-smg)
+* Boarisch (bar)
 * Bikol Central (bcl)
 * Belarusian Taraskievica orthography (be-tarask)
 * Bulgarian (bg)
 * Bislama (bi) (new)
+* Bamanankan (bm)
 * Bengali (bn)
 * Bishnupriya Manipuri (bpy)
 * Breton (br)
+* Buginese (bug) (new)
 * Catalan (ca)
+* Zamboangueño (cbk-zam) (new)
+* Chechen (ce)
+* Cebuano (ceb) (new)
 * Czech (cs)
 * Cassubian (csb)
+* Old Church Slavonic (cu)
 * Welsh (cy)
 * Danish (da)
 * German (de)
 * Lower Sorbian (dsb) (new)
+* Divehi (dv)
 * Ewe (ee) (new)
 * Greek (el)
+* English (en)
 * Spanish (es)
 * Extremaduran (ext)
 * Finnish (fi)
 * Persian (fa)
+* Fulah (ff)
 * Võro (fiu-vro)
 * Faroese (fo)
 * French (fr)
@@ -191,29 +328,39 @@ Full API documentation is available at http://www.mediawiki.org/wiki/API
 * Irish (ga)
 * Gön-gnŷ (gan) (new)
 * Galician (gl)
+* Gilaki (glk) (new)
 * Ancient Greek (grc) (new)
+* Swiss German (gsw)
 * Hakka (hak)
 * Hebrew (he)
 * Croatian (hr)
 * Upper Sorbian (hsb)
+* Hungarian (hu)
 * Armenian (hy)
+* Interlingua (ia)
 * Indonesian (id)
 * Ingush (inh) (new)
 * Icelandic (is)
 * Italian (it)
 * Japanese (ja)
 * Georgian (ka)
+* Kara-Kalpak (kaa)
+* Kabyle (kab)
 * Kazakh (kk)
 * Kannada (kn)
 * Korean (ko)
+* Kölsch (ksh)
 * Kurdish (Latin) (ku-latn)
 * Cornish (kw) (new)
 * Latin (la)
+* Luxembourgish (lb) (new)
+* Lak (lbe) (new)
 * Limbugian (li)
 * Lozi (loz) (new)
 * Lingala (ln)
 * Lithuanian (lt)
 * Malayalam (ml)
+* Macedonian (mk)
 * Malay (ms)
 * Erzya (myv) (new)
 * Nahuatl (nah)
@@ -223,14 +370,19 @@ Full API documentation is available at http://www.mediawiki.org/wiki/API
 * Newari (new) (new)
 * Dutch (nl)
 * Norwegian (no)
+* Occitan (oc)
+* Deitsch (pdc) (new)
 * Polish (pl)
 * Piemontèis (pms)
+* Pontic (pnt) (new)
 * Pashto (ps)
 * Portugese (pt)
 * Quechua (qu)
+* Rhaeto-Romance (rm) (new)
 * Romanian (ro)
 * Russian (ru)
 * Sakha (sah)
+* Sardinian (sc)
 * Sicilian (scn)
 * Sindhi (sd)
 * Sassarese (sdc) (new)
@@ -238,6 +390,8 @@ Full API documentation is available at http://www.mediawiki.org/wiki/API
 * Tachelhit (shi)
 * Slovak (sk)
 * Serbian (Cyrillic) (sr-ec)
+* Swati (ss) (new)
+* Saterland Frisian (stq) (new)
 * Sundanese (su)
 * Swedish (sv)
 * Tamil (ta)
@@ -245,11 +399,16 @@ Full API documentation is available at http://www.mediawiki.org/wiki/API
 * Tetun (tet) (new)
 * Tajik (tg)
 * Tagalog (tl) (new)
+* Turkish (tr)
+* Tuvinian (tyv)
 * Uyghur (ug)
+* Venitian (vec)
+* Vietnamese (vi)
 * West Flemish (vls)
 * Volapük (vo)
 * Walloon (wa)
 * Wolof (wo)
+* Wu (wuu) (new)
 * Yiddish (yi)
 * Cantonese (yue)
 * Zhuang (za)