http://forum.joomla.org/index.php/topic ... #msg200520
belong more to this thread, i'm "moving" my post here:
The backwards compatibility is indeed fabulous, considering that the whole engine running Joomla! has been re-factored.
There are very few fundamental changes, most of which that I welcome warmly, which will need slight adaptations on some components. These changes are backwards-compatible with Joomla 1.0/Mambo 4.5.
Here are the ones that we have spotted (and chosen not to correct for backwards compatibility at this stage):
- Global scope: For security enhancement reasons and better encapsulation reasons, the components are not anymore just included from the main index.php, but called from a function. Thus their variables scope is not the global scope anymore.
This means that variables created in the main part of a component, which are not declared as "global" before creation belong to the component's main execution, and are not accessible as global from the components functions.
The adaptation is trivial: just add one line in the begin of the component: "global ...." enumerating the global variables of the component, and the ones of Joomla it is using.
- Global parameters in variables: By default URL parameters are not translated anymore into globals of same name, but should be accessed the standard way.
Here too, the change is trivial: instead of looking directly at for instance at $form, do first a $form=mosGetParam( $_REQUEST, 'reportform'); .
This will prevent SQL injection attacks by the way, as mosGetParam does escaping even with magicquotes off.
- Start of changes in ACL: The tables structure of the used phpGACL has changed slightly, due to an update to latest phpGACL.
The $acl->.... methods remain backwards compatible, so components which do not access ACL tables wildly are ok.
- Modules path: Each module is installed in its own sub-directory, like components, meaning if they have images or other files, the path changes.
- Plugins: The mambots have been renamed to joomla plugins, as well as the directory, so same remark applies there.
So overall, the backwards compatibility is excellent, but not granted without small changes for all existing components, modules and mambots. 3PD are encouraged to download Joomla! 1.1 alpha 2 now, and to adapt their extensions to Joomla! 1.1 now. These adaptations can keep them backwards compatible to Joomla! 1.0, avoiding to have to mange two versions .
Hope these indications will help other 3PDs
If you see other things, please add them to my list, and/or add these to the official list :P