summaryrefslogtreecommitdiff
path: root/UPGRADE
diff options
context:
space:
mode:
Diffstat (limited to 'UPGRADE')
-rw-r--r--UPGRADE358
1 files changed, 181 insertions, 177 deletions
diff --git a/UPGRADE b/UPGRADE
index ecb5225b..05fe6547 100644
--- a/UPGRADE
+++ b/UPGRADE
@@ -1,177 +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:
- <translation type="Database" source="db1" autosave="true" cache="false" />
- 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 <span> 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 <div> instead of <span>
-- 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 <span> 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
- <com:TRequiredFieldValidator ClientSide.OnSuccess="xxx" />
- 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:
+ <translation type="Database" source="db1" autosave="true" cache="false" />
+ 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 <span> 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 <div> instead of <span>
+- 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 <span> 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
+ <com:TRequiredFieldValidator ClientSide.OnSuccess="xxx" />
+ 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.