####################################################################
#                      WebGUI Upgrade Gotchas                      #
####################################################################

This file contains a list of any changes you should be aware of when
upgrading from one version to the next, or even between multiple
versions. Be sure to heed the warnings contained herein as they will
save you many hours of grief.

4.9.0
--------------------------------------------------------------------
 * If you created any templates using the previous two beta versions
	(4.7.0 or 4.8.0) then you'll need to tweak your templates as
	the template language has changed slightly for greater
	flexibility.

 * All Link Lists have been reset to the default template.

 * All Site Maps have been reset to the default template.


4.8.0
--------------------------------------------------------------------
 * If you are an administrator, but your userId is not 3 you will
	notice that all the forms in WebGUI are shortened
	considerably. This is due to the new UI Levels. If you wish
	see all the form elements then use the user manager to edit
	your user profile and set your UI Level to 9.

4.7.0
--------------------------------------------------------------------
 * WebGUI::HTMLForm->radioList has been changed to correct an API
	error. However, if your applications use this method, this
	change will break your application. If you do not use any
	third-party or custom plug-ins, you can disregard this
	warning.

 * DownloadManager.pm in lib/WebGUI/Wobject has been renamed to
 	FileManager.pm. Please delete DownloadManager.pm from your
	installation after upgrading.

 * UserSubmission.pm in lib/WebGUI/Wobject has been renamed to
        USS.pm. Please delete UserSubmission.pm from your 
	installation after upgrading.

 * Many of WebGUI's default data structures have been altered. If
	you are using SQL Reports that access WebGUI's data
	structures directly, please be sure to alter them after
	the upgrade.

 * The Product template system has been merged into the system-wide
	template system. If you have created any custom product
	templates they templates will be lost during the upgrade
	process. Be sure to copy them to a save place before 
	upgrading.

 * All FAQ's have been reset to use the default template.

 * You may need to upgrade your CGI bundle because we are now using
	some of the newer functionality in the CGI::Util package.

4.6.3
--------------------------------------------------------------------
 * It has been reported that some people had a duplicate key error
	when upgrading from 4.5.0 to 4.6.0. This version has removed
	the possibility of that problem. The error actually didn't
	cause anything more than cosmetic problems. You have the
	choice of restoring to a backup version and reapplying the
	patches, or just moving forward. Either way will produce
	the same result.

4.6.0
--------------------------------------------------------------------
 * The runHourly scheduler has been updated to allow for more
	types of automation. This update has caused an
	incompatibility in old scheduler plug-ins. If you have not
	installed any third-party scheduler plug-ins, then you have
	nothing to worry about. However, if you do have some
	scheduler plug-ins that didn't come with WebGUI, then please
	contact the person or company that made it to get an
	upgrade.

4.3.0
--------------------------------------------------------------------
 * The settings "extras", "uploadsURL", and "uploadsPath" have all 
	been moved to the config file to make installations easier. 
	This means that you must add those lines to your old 
	configuration files before you upgrade. See 
	etc/WebGUI.conf.original for details. 

 * For wobject and macro developers this also means that any third-
	party wobjects that use those settings, must be modified to 
	use the new variable name. The following is the change in 
	relationship:

	$session{setting}{lib} = $session{config}{extras}
	$session{setting}{attachmentDirectoryWeb} = $session{config}{uploadsURL}
	$session{setting}{attachmentDirectoryLocal} = $session{config}{uploadsPath}

4.2.0
--------------------------------------------------------------------
 * All Discussion properties have been reset to enable the new
	discussion moderation features. If you are using discussions
	on your site, you'll need to set these properties back to
	whatever you were using. Note that none of the actual
	discussion data has been changed or lost.

4.1.0
--------------------------------------------------------------------
 * Between 3.6.5 and now, much of the WebGUI filesystem has changed
	dramatically. If you've been copying new WebGUI installs
	over the top of old WebGUI installs, you may want to
	consider starting with a clean slate. To do that just move
	your WebGUI folder to WebGUI.old and put the latest
	WebGUI distribution in its place. Then copy any necessary
	files (like conf files) from WebGUI.old to your new WebGUI
	folder.

3.10.0 && 3.10.1
--------------------------------------------------------------------
 * Be very very careful when applying the patch files for these
	releases. On most fileystems they come alpha-numerically
	before all of the other 3.x.x patches. Don't be fooled by
	this. They must be applied AFTER the 
	upgrade_3.9.0-3.10.0.sql patch. This is the order in which
	the patches MUST be applied:

	upgrade_3.9.0-3.10.0.sql
	upgrade_3.10.0-3.10.1.sql
	upgrade_3.10.1-4.0.0.sql

3.9.0
--------------------------------------------------------------------
 * The offline executables (runHourly.pl, testEnvironment.pl,
	and preload.perl) have been moved to the sbin folder.

3.8.0
--------------------------------------------------------------------
 * Widgets are being replaced with Wobjects. Any custom widgets
	you're using need to be replaced with new Wobjects or
	they will cease to function. Please contact the developer
	of the widget immediately to have them upgrade it to
	a Wobject.
 * The "Registered Users" group no longer has the privilege of 
	doing whatever "Visitors" can do. Instead we have created
	a new group called "Everyone", which means registered users
	and visitors alike can do whatever is assigned to the
	"Everyone" group. 

3.6.0
--------------------------------------------------------------------
 * You need to get a new Perl module called HTML::Parser before you 
	upgrade. You probably already have this module installed,
	but we had to warn those of you who don't. 
 * If your first install was WebGUI 3.5.2 then you are missing a
	necessary table. 3.5.2 was released without this code in
        create.sql. Execute the following code on your database:

	CREATE TABLE webguiVersion (
  		webguiVersion varchar(10) default NULL,
  		versionType varchar(30) default NULL,
  		dateApplied int(11) default NULL
	);
	insert into webguiVersion values 
	('3.5.2','intitial install',unix_timestamp());

	NOTE: If you upgraded to 3.5.2 from any version, you are
	not at risk. Do not apply the above update.

3.3.0
--------------------------------------------------------------------
 * You need to get a new Perl module before you upgrade. It is
	Image::Magick. On some systems you may also need to download
	and compile the C compliment to it from www.imagemagick.org.

3.2.1
--------------------------------------------------------------------
 * We released a faulty upgrade script with 3.2.0. If you happened 
	to be one of the unlucky people who upgraded to 3.2.0, apply 
	3.2.1 immediately. If you didn't upgrade to 3.2.0 then all 
	your upgrades will appear normal. If you installed 3.2.0 
	from scratch then DO NOT EVER apply the 3.2.1 upgrade!

3.2.0
--------------------------------------------------------------------
 * You need to get two new Perl modules before you upgrade. Those
 	are Date::Calc and HTML::CalendarMonthSimple.


3.0.2
--------------------------------------------------------------------
 * 3.0.2 was accidentally released with an internal version number
	of 3.0.1. If you're having problems figuring out what
	version you actually have, look at the definition of your
	widget table. If you see a field with the name
	"widgetType", then you're on 3.0.1. If you have a field
	named "namespace", then you're on 3.0.2.

3.0.1
--------------------------------------------------------------------
 * The macro syntax of old has officially been removed. If you're
	still using the old macro syntax, you must change them to
	the new syntax to avoid problems.

	Example: ^r => ^r; 
	Example: ^m3^/m => ^m(3);

3.0.0
--------------------------------------------------------------------
 * All 3rd-party widgets, macros, and templates that were not
	designed specifically for 3.x.x versions will no longer
	function properly.

2.7.0
--------------------------------------------------------------------
 * If your 3rd-party widgets, macros, templates, and utilities have
	not been broken by any other 2.x.x release, they will most
	certainly be broken by this one. The good news is that if
	you build any of those things on 2.7.0 or after, they
	should continue to work for the foreseeable future.

2.6.0
--------------------------------------------------------------------
 * If you've already downloaded the Item widget from the contributed
	section on the Plain Black site, it will be replaced with
	the now built in Item widget. You may notice an error
	regarding this when upgrading the database. You can ignore
	it.

2.5.0
--------------------------------------------------------------------
 * Any third-party Widgets you have installed are likely not to work
	any longer unless they have been updated to work with
	the new templating features in WebGUI.

2.4.0
--------------------------------------------------------------------
 * You must convert your old macros to the new format by version
	3.0.0 or they will become unusable.
 * The "extras" and "uploads" directories have been moved into the
	"www" directory so that aliases do not need to be created
	in your web server.

2.3.2
--------------------------------------------------------------------
 * Upgrade scripts are no longer available from the Plain Black
	web site. They are now included in every distribution under
	"docs/upgrades".

2.1.0
--------------------------------------------------------------------
 * The Widget and Macro architecture will be changing severely
	between now and 3.0.0. If you're using or creating any
	third-party widgets they will cease to function over the
	course of this development. Before upgrading, be certain
	that the Macro or Widget complies with all new 
	specifications.

