(bug 5378) General logs link in Special:Contributions
[lhc/web/wiklou.git] / UPGRADE
diff --git a/UPGRADE b/UPGRADE
index 0b7e8b4..ece64ec 100644 (file)
--- a/UPGRADE
+++ b/UPGRADE
@@ -1,12 +1,83 @@
 == The basic theory ==
 
+Generally, within a stable release series (e.g. 1.4.0, 1.4.1, etc) there
+are no required database changes, and upgrading should require no more
+than copying the new source files over the old ones.
+
+If there are larger changes, such as upgrading from one release series
+to another (e.g. from 1.3.12 to 1.4.3), then you may need to update the
+database schema and configuration.
+
 Basically, to upgrade a wiki you:
 * Back up your data! (See Backups! below)
 * Extract the new archive. If you can do this in a clean directory that's
   great, but it should work to extract over the old files too. This may
   be easier if you have images etc in place and don't want to move them
   around, but remember to back up first!
-* Run the installer to upgrade the database schema.
+* Run the installer to upgrade the database schema (if necessary,
+  see sections below for details).
+
+
+== IMPORTANT: Upgrading to 1.5 ==
+
+Major changes have been made to the schema from 1.4.x. The updater
+has not been fully tested for all conditions, and might well break.
+
+DO NOT ATTEMPT TO UPGRADE A LIVE, PUBLIC SITE TO 1.5 AT THIS TIME.
+NEVER EVER ATTEMPT TO PERFORM AN UPGRADE WITHOUT BACKING UP FIRST!
+
+On a large site, the schema update might take a long time. It might
+explode, or leave your database half-done or otherwise badly hurting.
+
+Among other changes, note that Latin-1 encoding (ISO-8859-1) is
+no longer supported. Latin-1 wikis will need to be upgraded to
+UTF-8; an experimental command-line upgrade helper script,
+'upgrade1_5.php', can do this -- run it prior to 'update.php' or
+the web upgrader.
+
+If you absolutely cannot make the UTF-8 upgrade work, you can try
+doing it by hand: dump your old database, convert the dump file
+using iconv as described here: 
+http://portal.suse.com/sdb/en/2004/05/jbartsh_utf-8.html
+and then reimport it. You can also convert filenames using convmv,
+but note that the old directory hashes will no longer be valid,
+so you will also have to move them to new destinations.
+
+Message changes:
+* A number of additional UI messages have been chagned from HTML to
+  wikitext, and will need to be manually fixed if customized.
+
+
+=== Configuration changes from 1.4.x: ===
+
+$wgDisableUploads has been replaced with $wgEnableUploads.
+
+$wgWhitelistAccount has been replaced by the 'createaccount' permission
+key in $wgGroupPermissions. To emulate the old effect of setting:
+  $wgWhitelistAccount['user'] = 0;
+set:
+  $wgGroupPermissions['*']['createaccount'] = false;
+
+$wgWhitelistEdit has been replaced by the 'edit' permission key.
+To emulate the old effect of setting:
+  $wgWhitelistEdit = true;
+set:
+  $wgGroupPermissions['*']['edit'] = false;
+
+If $wgWhitelistRead is set, you must also disable the 'read' permission
+for it to take affect on anonymous users:
+  $wgWhitelistRead = array( "Main Page", "Special:Userlogin" );
+  $wgGroupPermissions['*']['read'] = false;
+
+Note that you can disable/enable several other permissions by modifying
+this configuration array in your LocalSettings.php; see DefaultSettings.php
+for the complete default permission set.
+
+If using Memcached, you must enabled it differently now:
+  $wgUseMemCached = true;
+should be replaced with:
+  $wgMainCacheType = CACHE_MEMCACHED;
+
 
 === Web installer ===
 
@@ -59,9 +130,30 @@ http://mail.wikipedia.org/pipermail/wikitech-l/2004-November/026359.html
 
 == Caveats ==
 
-=== Upgrading from 1.4beta1 ===
 
-There are no database changes from beta1; just update the files.
+=== Upgrading from 1.4.2 or earlier ===
+
+1.4.3 has added new fields to the sitestats table. These fields are
+optional and help to speed Special:Statistics on large sites. If you
+choose not to run the database upgrades, everything will continue to
+work in 1.4.3.
+
+You can apply the update by running maintenance/update.php, or
+manually run the SQL commands from this file:
+  maintenance/archives/patch-ss_total_articles.sql
+
+
+=== Upgrading from 1.4rc1 or earlier betas ===
+
+The logging table has been altered from 1.4beta4 to 1.4beta5
+and again in 1.4.0 final. Copy in the new files and use the web
+installer to upgrade, or the command-line maintenance/update.php.
+
+If you cannot use the automated installers/updaters, you may
+update the table by manually running the SQL commands in these
+files:
+   maintenance/archives/patch-log_params.sql
+   maintenance/archives/patch-logging-title.sql
 
 
 === Upgrading from 1.3.x ===
@@ -79,6 +171,22 @@ to this:
   $wgStyleDirectory   = "$IP/skins";
   $wgLogo             = "$wgStylePath/common/images/wiki.png";
 
+As well as new messages, the processing of some messages has changed.
+If you have customized them, please compare the new format using
+Special:Allmessages or the relevant LanguageXX.php files:
+  copyrightwarning
+  dberrortext
+  editingcomment  (was named commentedit)
+  editingsection  (was named sectionedit)
+  numauthors
+  numedits
+  numtalkauthors
+  numtalkedits
+  numwatchers
+  protectedarticle
+  searchresulttext
+  showhideminor
+  unprotectedarticle
 
 Note that the 1.3 beta releases included a potential vulnerability if PHP
 is configured with register_globals on and the includes directory is
@@ -97,9 +205,11 @@ note that things are a little different. The Template: namespace has been
 added which is more powerful -- templates can include parameters for
 instance.
 
-Any MediaWiki: entries that are not used by the software will be automatically
-moved to Template: entries at upgrade time. Be sure to go through and check
-that everything is working properly.
+If you were using custom MediaWiki: entries for text inclusions, they
+will *not* automatically be moved to Template: entries at upgrade time.
+Be sure to go through and check that everything is working properly;
+you can move them manually or you can try using moveCustomMessages.php
+in maintenance/archives to do it automatically, but this might break things.
 
 Also, be sure to pick the correct character encoding -- some languages were
 only available in Latin-1 on 1.2.x and are now available for Unicode as well.