TWiki Release 4.2.0 (Freetown), 15:23:23 10 December 2007
BETA RELEASE 1
- This is the first beta release of TWiki 4.2.0. At the release of this beta there are still some open release blocking bugs open. However we have chosen to make this beta available because we really need our users to test the new WYSIWYG editor and report back all the errors that for sure will be found.
Introduction
TWiki Release 4.2.0 is a minor release. TWiki releases are either major (major new features and changes in architecture), minor (enhancements and bug fixes), or patch releases (bug fixes only) which can be installed as upgrades on production installations.
TWiki Release 4.2.0 introduces some good enhancements and quite many bug fixes since 4.1.2.
The development team has done everything to maintain full compatibility with topics generated in TWiki-4.0 and there are no changes to the topic format when using normal TWikiUserMapping
Pre-installed Extensions
TWiki 4.2.0 is shipped with
- Plugins: CommentPlugin, EditTablePlugin, EmptyPlugin, InterwikiPlugin, PreferencesPlugin, RenderListPlugin, SlideShowPlugin, SmiliesPlugin, SpreadSheetPlugin, TablePlugin, TwistyPlugin, WysiwygPlugin
- Contribs: BehaviourContrib JSCalendarContrib, TinyMCEContrib, MailerContrib, NatEditContrib, TipsContrib, TwistyContrib
- Skins: ClassicSkin, PatternSkin
New Features Highlights
- Easier Installation and Upgrade
- New Internal Admin Login feature. See below.
- The Main.TWikiUsers topic is no longer distributed as a default topic in Main. See below.
- A new directory
working
which per default is located in the twiki root which contains registration_approvals, tmp, and work_areas. See below
- ResetPassword, ChangePassword, ChangeEmailAddress, and TWikiRegistration no longer contains yellow text that you have to remove.
- Configure can now authenticate when connecting to local plugins repository.
- Usability Enhancements
- New WYSIWYG editor based on TinyMCE replaces the Kupu based editor. See below.
- New "Restore topic" feature has been added to the More Topic Actions menu. You can now much more easily restore an older version of a topic including the values a topic form.
- Attachment comments no longer has a limit to the length of the text.
- The viewfile script now accepts similar simple URL path as used to access a topic. E.g.
http://example.com/twiki/bin/viewfile/TWiki/TWikiDocGraphics/addon.gif
means the same as http://example.com/twiki/bin/viewfile/TWiki/TWikiDocGraphics?filename=addon.gif
. This make it simpler to use command line tools like wget
in Linux to download attachments.
- Application Platform Enhancements
- Enhancements to IF: allows, istopic, and isweb
- Search Enhancements
- New
query
search mode supports SQL-style queries over form fields and other meta-data.
- Skins and Templates Enhancements
- The PatternSkin which is the default skin for TWiki has got a face lift.
- The template have been heavily refactored. This will break some tailorings and home made skins but it was needed to make it easier to make skins in the future.
- Miscellaneous Feature Enhancements
- Many new functions in the API for plugin developers.
- Table of Content (TOC) feature enhanced
- User Mapping (mapping between login name and WikiName) code has been extended to allow pluggable modules to integrate with all sorts of alternative authentication schemes. For normal cases you use the default TWikiUserMapping which is using the Main.TWikiUsers topic to map between login and WikiName. A new BaseUserMapping is provided for TWikis where you only have guests and an administrator. In this case you use the login and password given in configure to login as an admin.
Important Changes since 4.1.2
New WYSIWYG Editor
TWiki now ships with a new WYSIWYG editor based on TinyMCE replaces the Kupu based editor.
TinyMCE is not a perfect Wysiwyg editor but it is magnitudes better than the Kupu editor
The WysiwygPlugin that drives the engine behind both TinyMCE has additionally been heavily improved so that less TWiki Applications are negatively affected by editing WYSIWYG
When TinyMCEPlugin is enabled the Edit button per default becomes WYSIWYG editing mode. A new Raw Edit link has been added to enable application developers to edit the good old way
The WYSIWYG button is removed when using TinyMCE instead of Kupu.
NEWTOPICLINKSYMBOL removed
The NEWTOPICLINKSYMBOL preference which was deprecated in 4.1 has now been removed from the code. If you want to control the appearance of new links, you can use
NEWLINKFORMAT?
UserForm and NewUserTemplate Customization
When a new user registers on TWiki his user topic is created based on the
NewUserTemplate
and
UserForm
.
The
NewUserTemplate
was located in the TWiki web and the
UserForm
in the Main web. When upgrading TWiki these were some of the topics you had to take care not to overwrite.
From 4.2.0 the
UserForm
and
NewUserTemplate
are distributed in the TWiki web. If you create the two in the Main web the Main web version will be used instead. So if you tailor the user topic format or the form then you should always copy the two files to the Main web and modify the ones in the Main web. When you later upgrade TWiki your tailored template and form will not be overwritten.
TWikiUsers no longer distributed
The
Main.TWikiUsers
topic contains all the registered users. It is a topic you do not want to overwrite when you upgrade TWiki.
From 4.2.0 this file is no longer included in the TWiki distribution. When you register the first time TWiki creates the
Main.TWikiUsers
topic in the Main web if it does not exist already. This means that you can now upgrade TWiki without risk of overwriting the important
TWikiUsers
topic.
- For new installers this makes no difference at all
- For upgraders this is one less problem to worry about as your important Main.TWikiUsers topic now no longer gets overwritten when upgrading.
New working
directory
A new directory
working
which per default is located in the twiki root, has been introduced which contains:
- registration_approvals - with 4.2.0 it is moved to here from the data directory)
- tmp - so we now avoid having to fight with special access rights and /tmp directory that gets cleaned out when booting.
- work_areas - with 4.2.0 it is moved to here from the pub directory. Configure automatically moved the directory when you upgrade.
Note: Remember to restrict access to this new directory when you upgrade.
New Internal Admin Login
TWiki 4.2 introduces a new
Internal Admin Login feature which uses "admin" (configurable) as username and the password used for configure to become temporary administrator. When you do a new installation you need to use this feature as Main.TWikiAdminGroup is now access restricted by default to avoid security attacks during the hours an installation may take. From configure there is a link to the TWikiAdminGroup topic and on TWikiAdminGroup the step by step instructions are written in a yellow box. Our advice is not to remove this help text in case you need it later.
API Enhancements (Func)
- $TWiki::Plugins::VERSION is now 1.2
- Added
decodeFormatTokens($str) -> $unencodedString
- Added
eachChangeSince($web, $time) -> $iterator
- Added
eachGroup() -> $iterator
- Added
eachGroupMember($group) -> $iterator
- Added
eachMembership($wikiname) -> $iterator
- Added
eachUser() -> $iterator
- Added
emailToWikiNames( $email, $dontAddWeb ) -> @wikiNames
- Added
meta
parameter to expandCommonVariables( $text, $topic, $web, $meta ) -> $text
- Added
getCanonicalUserID( $user ) -> $cUID
- Added
getExternalResource( $url ) -> $response
- Added
getSessionKeys() -> @keys
- Added
user
parameter to getWikiName( $user ) -> $wikiName
- Added
user
parameter to getWikiUserName($user ) -> $wikiName
- Added
isAnAdmin( $login ) -> $boolean
- Added
isGroup( $group ) -> $boolean
- Added
isGroupMember( $group, $login ) -> $boolean
- Added
isTrue( $value, $default ) -> $boolean
- Added
popTopicContext()
- Added
pushTopicContext($web, $topic)
- Added
setPreferencesValue($name, $val)
- Added
sanitizeAttachmentName($fname) -> ($fileName, $origName)
- Added
spaceOutWikiWord( $word, $sep ) -> $text
- Added
wikiNameToEmails( $wikiname ) -> @emails
- Deprecated getOopsUrl( $web, $topic, $template, $param1, $param2, $param3, $param4 ) -> $url
- Deprecated permissionsSet( $web ) -> $boolean
Deprecation Notices
The %MAINWEB% and %TWIKIWEB% variables have been deprecated. For compatibility reasons they are unlikely to ever be removed completely, but you should use the %USERSWEB% and %SYSTEMWEB% variables instead.
In Func getOopsUrl and permissionsSet have been declared deprecated. There is no plan to remove them yet.
TWiki 4.2.0 Minor Release - Details
The 4.2.0 release was built from SVN
http://svn.twiki.org/svn/twiki/branches/TWikiRelease04x02 revision FIXME.
TWiki 4.2.0 Fixes
FIXME using
http://develop.twiki.org/~twiki4/cgi-bin/view/Bugs/ReleaseNotesTml?type=n%2Fa%7Cpatch%7Cminor
TWiki 4.2.0 Enhancements
FIXME using
http://develop.twiki.org/~twiki4/cgi-bin/view/Bugs/ReleaseNotesTml?type=n%2Fa%7Cpatch%7Cminor
Related Topic: TWikiHistory