TWiki Upgrade Guide
Upgrading to TWiki 01-Sep-2001
Upgrade from your 01-Dec-2000 edition to the new, next generation
01-Sep-2001 TWiki Production Release in a few straightforward steps.
Major Changes from 01-Dec-2000
The 01 Sep 2001 release includes several new areas of functionality, and existing features have been significantly revised and enhanced. These changes affect the upgrade of the 01 Dec 2000 version:
- TWikiPlugins major enhancement, allows easy installation and removal of program enhancements using external plug-in modules, standardized creation of Plugins with the Plugins API
- AttachmentsUnderRevisionControl In the previous version, changes to topics were tracked under revision control (RCS); now, topic Attachments are also tracked.
- RenameTopic/Move/Delete Topic In the previous version, managing topics required access to the TWiki file system (Telnet or FTP); now, moving, renaming, deleting can be done through the browser. Deleted topics are act move and stored in a common Trash web.
- TOC (Table of Contents) Automatically generates a hierarchical Table of Contents from topic headings: <HI>...<H6>. Set depth...
- ArbitraryTextForWikiWordLinks
- ChangingTWikiPasswords done by Web form
- TWikiFormTemplate
- TWikiTemplateSystem all new template set-up
- TWikiSkins
- SuperAdminCanEdit
- TWikiMetaData
- ConvertToXHTML10
- HierarchicalNavigation
The TWiki directory structure remains the same, with one exception, the new
lib/TWiki/Plugins
directory tree to for the main configuration file, library, internal modules and the new Plugin modules. Pre-existing files were formerly in
bin
.
Picking the Right Upgrade Path
Check these to make sure you're on the right page:
- If you've updated, replaced, or even added files from any of this year's Beta test releases of the new TWiki, head here: TWikiBetaUpgradeNotes?.
- To upgrade from a pre-01-Dec-2000 TWiki, make this your first stop: TWikiUpgradeTo01Dec2000.
Standard Six-Step Upgrade
Follow this step-by-step guide to upgrade the 01 Dec 2000 version to the 01 Sep 2001 release, and transfer all of your original data: [ We assume
export TWIKIROOT=/some/dir/
]
Step 1: Backup & Unpack
- Backup all existing TWiki directories (
bin
, pub
, data
, templates
)
- Unpack the zip file into some working directory:
mkdir -p ~/tmp/
cd ~/tmp
unzip ~/TWiki20001201.zip
Step 2: Upgrade TWiki document files
-
- Move the document files to your TWiki root: (
twiki
)
mv ~/tmp/TWiki*.html $TWIKIROOT
mv ~/tmp/readme.txt $TWIKIROOT
Step 3: Upgrade cgi-bin scripts
-
- Rename your original
twiki/bin
directory: ( twiki/bin
)
mv $TWIKIROOT/bin $TWIKIROOT/bin.old
- Move the new scripts to your original
twiki/bin
location, i.e.
mv ~/tmp/bin $TWIKIROOT/bin
- Merge the changes in your current
wikicfg.pm
into the new wikicfg.pm
. We suggest using diff -c
to compare the two files if you have made heavy changes to the file, i.e.
diff -c $TWIKIROOT/bin.old/wikicfg.pm $TWIKIROOT/bin/wikicfg.pm | less
- Restore any additional scripts you might have from the old directory, i.e.
mv $TWIKIROOT/bin.old/somescript $TWIKIROOT/bin/
(Note that the changes
script is obsolete.)
- In case you have basic authentication:
- The
TWikiRegistration
topic moved from the TWiki.Main web to the TWiki.TWiki web. Change .htaccess
to reflect the new location, i.e.
ErrorDocument 401 /cgi-bin/view/TWiki/TWikiRegistration
- Pay attention to the file and directory permissions (security issue)
- Test your TWiki installation if you can view topics. (Ignore the
%HTTP_EQUIV_ON_VIEW%
you see on top of the topic; this will disappear after upgrading the template files.
Step 4: Upgrade template files
-
- Rename your original
twiki/templates
directory: ( twiki/templates
)
mv $TWIKIROOT/templates $TWIKIROOT/templates.old
- Move the new templates to your original
twiki/templates
location, i.e.
mv ~/tmp/templates $TWIKIROOT/templates
- Merge the changes in your current template files into the new template files. To compare two files use
diff -c $TWIKIROOT/templates.old/view.tmpl $TWIKIROOT/templates/view.tmpl | less
- Restore any additional template subdirectories of your TWiki webs you might have and merge the changes.
- Test your TWiki installation if you can view topics.
Step 5: Upgrade public files
-
- Move the new
twiki/pub/TWiki
directory to your installation: ( twiki/pub
)
mv ~/tmp/pub/TWiki $TWIKIROOT/pub/
- Pay attention to the file permissions of the
TWiki
directory and its subdirectory and files. The files must be writable by the cgi-scripts (usually user "nobody")
- Move the new
twiki/pub/twikilogo*
image files to your installation, i.e.
mv ~/tmp/pub/twikilogo* $TWIKIROOT/pub/
Step 6: Upgrade data files
-
- Move the new
twiki/data/TWiki
directory to your installation: ( twiki/data
)
mv ~/tmp/data/TWiki $TWIKIROOT/data/
Pay attention to the file permissions of the TWiki
directory and its files. The files must be writable by the cgi-scripts (usually user "nobody")
- Optionally move the new
twiki/data/Test
directory to your installation, i.e.
mv ~/tmp/data/Test $TWIKIROOT/data/
(Pay attention to the file permissions)
- Move these new TWiki.Main web topics to your TWiki.Main web:
TWikiGroups
, TWikiAdminGroup
, and if needed also OfficeLocations
, i.e.
mv ~/tmp/data/Main/TWikiGroups.* $TWIKIROOT/data/Main
(Pay attention to the file permissions)
- The following topics in the TWiki.Main web are obsolete and can be deleted:
BillClinton
, GoodStyle
, RegularExpression
, TextFormattingFAQ
, TextFormattingRules
, TWikiAdministration
, TWikiCategoryTable
, TWikiEnhancementRequests
, TWikiImplementationNotes
, TWikiInstallationGuide
, TWikiNotificationOfChanges
, TWikiPlannedFeatures
, TWikiUpgradeTo01May2000
, TWikiUsernameVsLoginUsername
, TWikiSite
, WelcomeGuest
, WelcomeVisitor
, WikiName
, WikiNotation
, WikiTopic
, WikiWikiClones
. Sample delete command:
rm -f $TWIKIROOT/data/Main/BillClinton.*
- The following topics are new and most be copied to all of your TWiki webs:
WebChanges
, WebIndex
.
cp -p $TWIKIROOT/data/TWiki/WebChanges.txt* $TWIKIROOT/data/Main
cp -p $TWIKIROOT/data/TWiki/WebIndex.txt* $TWIKIROOT/data/Main
Repeat this for all your webs. Pay attention to the file permissions.
-
TWikiRegistration
moved from TWiki.Main to TWiki.TWiki. In case you customized TWikiRegistration
, merge your changes back into TWiki.TWikiRegistration
, then delete $TWIKIROOT/data/Main/TWikiRegistration*
.
-
TWikiPreferences
moved from TWiki.Main to TWiki.TWiki. Merge your changes to TWikiPreferences
into TWiki.TWikiPreferences
.
- Modify the
WebPreferences
topics in all your webs to reflect the following:
-
WEBTOPICLIST
should use WebChanges
for "Changes"
, and WebIndex
for "Index"
, i.e.
| <a href="WebChanges">Changes</a>
| <a href="WebIndex">Index</a>
- In case you want to exclude a web from a
web="all"
search: Set this new preference
Set NOSEARCHALL = on
- The
WebSearch
topic has considerable changes. Copy the one from TWiki.TWiki
into all webs, or merge them if you made changes. To copy, do an edit-copy-edit-paste operation.
- Change the
WebHome
topics in all your webs to reflect these changes:
- The "Changes" link should point to
WebChanges
.
- The "Topic index" link should point to
WebIndex
.
- Change the include of the web table to
%INCLUDE{"%TWIKIWEB%.TWikiWebsTable"}%
- Merge your
TWikiWebsTable
topic in TWiki.Main with the TWikiWebsTable
topic in TWiki.TWiki. Note the new variable to query the color of a web. Delete the old TWikiWebsTable
topic in TWiki.Main after merge is complete.
- The following topics in the TWiki.Main web are deprecated (because they moved to TWiki.TWiki), but still need to be present in TWiki.Main because of existing links to them:
FileAttachment
, TWikiDocumentation
, TWikiHistory
, TWikiPreferences
, TWikiVariables
.
It is recommended that you edit these topics in TWiki.Main and replace the content with this line:
This topic moved to %TWIKIWEB%.%TOPIC% in the %WIKITOOLNAME%.%TWIKIWEB% web.
- In all your webs, change references to topics that moved to the TWiki.TWiki web:
- Change topics:
TWikiUsers
, WebNotify
, WebHome
- With links to:
TWikiPreferences
, TWikiVariables
, TWikiUsers
, TWikiWebsTable
and WelcomeGuest
Setting Access Control
-
- Read TWikiAccessControl, in case you want to use the new authorization feature based on groups.
Known Upgrade Issues
--
MikeMannix - 26 Aug 2001