From 6228873cf9d6471463d2413e7dfd7447f759baf2 Mon Sep 17 00:00:00 2001 From: "christophe.boulain" <> Date: Wed, 3 Dec 2008 14:22:03 +0000 Subject: Merge from trunk --- UPGRADE | 353 +++++++++++++++++++++++++++++++++------------------------------- 1 file changed, 181 insertions(+), 172 deletions(-) (limited to 'UPGRADE') diff --git a/UPGRADE b/UPGRADE index 4fa19f8c..05fe6547 100644 --- a/UPGRADE +++ b/UPGRADE @@ -1,172 +1,181 @@ - - Upgrading Instructions for PRADO Framework v3.1.3 - ================================================= - -!!!IMPORTANT!!! - -The following upgrading instructions are cumulative. That is, -if you want to upgrade from version A to version C and there is -version B between A and C, you need to following the instructions -for both A and B. - -Upgrading from v3.1.2 ---------------------- -- The Translation configuration now also accepts type 'Database' to - ease the setup of DB base translation. A valid ConnectionID has to - be supplied in the source parameter: - - Type 'MySQL' can still be used but is deprecated and might be removed - in a later release. -- TinyMCE (used by THtmlArea component) has been upgraded to version 3.1.0.1. - Since the 3.X branch of TinyMCE has a different API than 2.X, you should - upgrade your Customs Plugins if you use any. - See http://wiki.moxiecode.com/index.php/TinyMCE:Migration_guide for more information. - - -Upgrading from v3.1.1 ---------------------- -- The RELATIONS type declaration in Active Record classes for Many-to-Many using - an association table was change from "self::HAS_MANY" to "self::MANY_TO_MANY". - E.g. change - 'albums' => array(self::HAS_MANY, 'Artist', 'album_artists') - to - 'albums' => array(self::MANY_TO_MANY, 'Artist', 'album_artists') -- Active Record no longer automatically adds/removes/updates related objects. -- 'Raw' mode for TCheckboxList and TRadioButtonList (and their active counter parts) now render - a surrounding tag to allow client scripts to identify them with the ClientId. You may - have to check your CSS. - - -Upgrading from v3.1.0 ---------------------- -- The RELATIONS declaration in Acive Record classes is changed from - "protected static $RELATIONS" to "public static $RELATIONS". -- IFeedContentProvider adds a new method: getContentType(). This affects any - class implementing this interface. -- TUrlMapping now only uses the PATH_INFO part of URL for matching, and the matching - is for the whole PATH_INFO. -- IUserManager adds two new methods: getUserFromCookie() and saveUserToCookie(). - This affects classes that implements this interface and does not extend from - TUserManager. -- The order of application lifecycles is changed. The loadState and loadStateComplete - are moved to right after onBeginRequest. -- TDropDownList will be in an unselected state if no initial selection is specified. - That is, its SelectedIndex will be -1. Previously, the first item will be considered as selected. - -Upgrading from v3.1b --------------------- -- Comment tag (introduced in v3.1a) is changed to -- When TDataList.RepeatLayout is Raw, the items will render
instead of -- TActiveRecord finder methods will always return a new object instance (identity mapping was removed). -- TActiveRecord::findBySql() will return an object rather than an array -- TActiveRecord::findAllBySql() will return an array of objects. - -Upgrading from v3.1a ---------------------- -- The signature of TActiveRecord::finder() is changed. This affects - all TActiveRecord-descendant classes that override this method. - Please use the following code to override the method: - public static function finder($className=__CLASS__) - { - return parent::finder($className); - } - -- The way to specify the table name for an active record class is changed. - Previously, it used the static class member '_tablename'. - Now it uses class constant as follows: - class UserRecord extends TActiveRecord - { - const TABLE='users_table'; - } - -- Changed TActiveRatingList's javascript control class - name from "Prado.WebUI.TRatingList" to "Prado.WebUI.TActiveRatingList". - -- PRADO's javascript library locations moved from Web/Javascripts/xxx to Web/Javascripts/source/xxx - -- IPostBackDataHandler added a new method getDataChanged(). Any control - implementing this interface will be required to implement this new method. - -Upgrading from v3.0.x ---------------------- -- Validators ClientSide.OnSuccess becomes ClientSide.OnValidationSuccess, -- Validators ClientSide.OnError becomes ClientSide.OnValidationError, -- Validator OnSuccess event becomes OnValidationSuccess. -- Validator OnError event becomes OnValidationError. -- Content enclosed in is now parsed as normal template content. - Previously, it was not parsed and was rendered as is. - -Upgrading from v3.0.7 ---------------------- - -Upgrading from v3.0.6 ---------------------- - -Upgrading from v3.0.5 ---------------------- -- TRepeater does not render anymore for empty item template. -- constructUrl() now encodes ampersand by default. This should have minimal - impact on any existing PRADO applications, though. -- TDataGrid does not generate default table styles. This may affect - the appearance of existing PRADO applications that use TDataGrid. -- If TUrlMapping is used, you need to set the UrlManager property of - THttpRequest to the module ID of TUrlMapping. -- TJavascriptLogger toggle key is changed from ALT-D to ALT-J. - Use the ToggleKey property chanage to a different key. -- Javascript Library rico was REMOVED. - -Upgrading from v3.0.4 ---------------------- -- TFileUpload::saveAs() will return false instead of raising an exception - if it encounters any error. -- TDropDownListColumn.DataField is renamed to DataTextField and - DataFormatString is renamed to DataTextFormatString. - A new property named DataValueField is added. - -Upgrading from v3.0.3 ---------------------- -- The 'Static' value is changed to 'Fixed' for the Display property of - all validators as well as TValidationSummary, due to conflict with PHP keywords. -- The 'List' value is changed to 'SimpleList' for TValidationSummary.DisplayMode. -- The 'List' value is changed to 'DropDownList' for TPager.Mode -- This change affects existing client-side javascript handlers such as - - All ClientSide javascript event handlers (such as ClientSide.OnSuccess) - are by default wrapped within the function block. - function(sender, parameter){ // handler code } - You may override this behaviour by providing your own javascript statement block - as "javascript:MyHandlerFunction", e.g. ClientSide.OnSuccess="javascript:MyHandlerFunction" - or ClientSide.OnSuccess="javascript:function(validator,sender){ ... }" - - -Upgrading from v3.0.2 ---------------------- -- The minimum PHP version required is raised to 5.1.0 and above. - If your server is installed with a lower version of PHP, you will - have to upgrade it in order to run PRADO applications. -- The signature of TControl::broadcastEvent() is changed from - broadcastEvent($sender,TBroadCastEventParameter $param) to - broadcastEvent($name,$sender,$param). - This makes the call to broadcastEvent() to be consistent with raiseEvent(). - -Upgrading from v3.0.1 ---------------------- -- Postback enabled control will always disable default client-side browser action. - This is due to google toolbar's interference of event stopping scheme. - This modification should only affect user-derived postback javascripts. - -Upgrading from v3.0.0 ---------------------- -- URL format is modified when THttpRequest.UrlFormat=='Path'. - This modification affects both the URLs generated by calling constructUrl() - and the URLs understood by PRADO. In particular, PRADO now understands - the following URL format: - /index.php/ServiceID,ServiceParam/Name1,Value1/Name2,Value2/... - In v3.0.0, the above URL is written as: - /index.php/ServiceID/ServiceParam/Name1/Value1/Name2/Value2/... -- TControl::onBubbleEvent() has been changed to TControl::bubbleEvent(). - This change only affects user controls that override this method. - -Upgrading from v2.x and v1.x ----------------------------- -PRADO v3.x is not backward compatible with v2.x and v1.x. + + Upgrading Instructions for PRADO Framework v3.1.4 + ================================================= + +!!!IMPORTANT!!! + +The following upgrading instructions are cumulative. That is, +if you want to upgrade from version A to version C and there is +version B between A and C, you need to following the instructions +for both A and B. + +Upgrading from v3.1.3 +--------------------- + + +Upgrading from v3.1.2 +--------------------- +- The Translation configuration now also accepts type 'Database' to + ease the setup of DB base translation. A valid ConnectionID has to + be supplied in the source parameter: + + Type 'MySQL' can still be used but is deprecated and might be removed + in a later release. +- TinyMCE (used by THtmlArea component) has been upgraded to version 3.1.0.1. + Since the 3.X branch of TinyMCE has a different API than 2.X, you should + upgrade your Customs Plugins if you use any. + See http://wiki.moxiecode.com/index.php/TinyMCE:Migration_guide for more information. +- If you use EnableStateEncryption, the PageState of your current user sessions + will no longer be valid, since we optimized the encryption/compression logic. +- You can now use # and $ characters in your SQL statements with SQLMap by + escaping them as ## and $$. That induces that you can't have consecutive + parameters like #param1##param2# or $param1$$param2$ in your statements anymore. + + +Upgrading from v3.1.1 +--------------------- +- The RELATIONS type declaration in Active Record classes for Many-to-Many using + an association table was change from "self::HAS_MANY" to "self::MANY_TO_MANY". + E.g. change + 'albums' => array(self::HAS_MANY, 'Artist', 'album_artists') + to + 'albums' => array(self::MANY_TO_MANY, 'Artist', 'album_artists') +- Active Record no longer automatically adds/removes/updates related objects. +- 'Raw' mode for TCheckboxList and TRadioButtonList (and their active counter parts) now render + a surrounding tag to allow client scripts to identify them with the ClientId. You may + have to check your CSS. + + +Upgrading from v3.1.0 +--------------------- +- The RELATIONS declaration in Acive Record classes is changed from + "protected static $RELATIONS" to "public static $RELATIONS". +- IFeedContentProvider adds a new method: getContentType(). This affects any + class implementing this interface. +- TUrlMapping now only uses the PATH_INFO part of URL for matching, and the matching + is for the whole PATH_INFO. +- IUserManager adds two new methods: getUserFromCookie() and saveUserToCookie(). + This affects classes that implements this interface and does not extend from + TUserManager. +- The order of application lifecycles is changed. The loadState and loadStateComplete + are moved to right after onBeginRequest. +- TDropDownList will be in an unselected state if no initial selection is specified. + That is, its SelectedIndex will be -1. Previously, the first item will be considered as selected. + +Upgrading from v3.1b +-------------------- +- Comment tag (introduced in v3.1a) is changed to +- When TDataList.RepeatLayout is Raw, the items will render
instead of +- TActiveRecord finder methods will always return a new object instance (identity mapping was removed). +- TActiveRecord::findBySql() will return an object rather than an array +- TActiveRecord::findAllBySql() will return an array of objects. + +Upgrading from v3.1a +--------------------- +- The signature of TActiveRecord::finder() is changed. This affects + all TActiveRecord-descendant classes that override this method. + Please use the following code to override the method: + public static function finder($className=__CLASS__) + { + return parent::finder($className); + } + +- The way to specify the table name for an active record class is changed. + Previously, it used the static class member '_tablename'. + Now it uses class constant as follows: + class UserRecord extends TActiveRecord + { + const TABLE='users_table'; + } + +- Changed TActiveRatingList's javascript control class + name from "Prado.WebUI.TRatingList" to "Prado.WebUI.TActiveRatingList". + +- PRADO's javascript library locations moved from Web/Javascripts/xxx to Web/Javascripts/source/xxx + +- IPostBackDataHandler added a new method getDataChanged(). Any control + implementing this interface will be required to implement this new method. + +Upgrading from v3.0.x +--------------------- +- Validators ClientSide.OnSuccess becomes ClientSide.OnValidationSuccess, +- Validators ClientSide.OnError becomes ClientSide.OnValidationError, +- Validator OnSuccess event becomes OnValidationSuccess. +- Validator OnError event becomes OnValidationError. +- Content enclosed in is now parsed as normal template content. + Previously, it was not parsed and was rendered as is. + +Upgrading from v3.0.7 +--------------------- + +Upgrading from v3.0.6 +--------------------- + +Upgrading from v3.0.5 +--------------------- +- TRepeater does not render anymore for empty item template. +- constructUrl() now encodes ampersand by default. This should have minimal + impact on any existing PRADO applications, though. +- TDataGrid does not generate default table styles. This may affect + the appearance of existing PRADO applications that use TDataGrid. +- If TUrlMapping is used, you need to set the UrlManager property of + THttpRequest to the module ID of TUrlMapping. +- TJavascriptLogger toggle key is changed from ALT-D to ALT-J. + Use the ToggleKey property chanage to a different key. +- Javascript Library rico was REMOVED. + +Upgrading from v3.0.4 +--------------------- +- TFileUpload::saveAs() will return false instead of raising an exception + if it encounters any error. +- TDropDownListColumn.DataField is renamed to DataTextField and + DataFormatString is renamed to DataTextFormatString. + A new property named DataValueField is added. + +Upgrading from v3.0.3 +--------------------- +- The 'Static' value is changed to 'Fixed' for the Display property of + all validators as well as TValidationSummary, due to conflict with PHP keywords. +- The 'List' value is changed to 'SimpleList' for TValidationSummary.DisplayMode. +- The 'List' value is changed to 'DropDownList' for TPager.Mode +- This change affects existing client-side javascript handlers such as + + All ClientSide javascript event handlers (such as ClientSide.OnSuccess) + are by default wrapped within the function block. + function(sender, parameter){ // handler code } + You may override this behaviour by providing your own javascript statement block + as "javascript:MyHandlerFunction", e.g. ClientSide.OnSuccess="javascript:MyHandlerFunction" + or ClientSide.OnSuccess="javascript:function(validator,sender){ ... }" + + +Upgrading from v3.0.2 +--------------------- +- The minimum PHP version required is raised to 5.1.0 and above. + If your server is installed with a lower version of PHP, you will + have to upgrade it in order to run PRADO applications. +- The signature of TControl::broadcastEvent() is changed from + broadcastEvent($sender,TBroadCastEventParameter $param) to + broadcastEvent($name,$sender,$param). + This makes the call to broadcastEvent() to be consistent with raiseEvent(). + +Upgrading from v3.0.1 +--------------------- +- Postback enabled control will always disable default client-side browser action. + This is due to google toolbar's interference of event stopping scheme. + This modification should only affect user-derived postback javascripts. + +Upgrading from v3.0.0 +--------------------- +- URL format is modified when THttpRequest.UrlFormat=='Path'. + This modification affects both the URLs generated by calling constructUrl() + and the URLs understood by PRADO. In particular, PRADO now understands + the following URL format: + /index.php/ServiceID,ServiceParam/Name1,Value1/Name2,Value2/... + In v3.0.0, the above URL is written as: + /index.php/ServiceID/ServiceParam/Name1/Value1/Name2/Value2/... +- TControl::onBubbleEvent() has been changed to TControl::bubbleEvent(). + This change only affects user controls that override this method. + +Upgrading from v2.x and v1.x +---------------------------- +PRADO v3.x is not backward compatible with v2.x and v1.x. -- cgit v1.2.3