forked from joomla/joomla-platform
-
Notifications
You must be signed in to change notification settings - Fork 0
Roadmap
eddieajau edited this page Jan 23, 2012
·
19 revisions
This is a living (always draft) roadmap. All points are subject to delivery by interested parties and may be changed or reprioritised without notice.
Closed and tagged on 4 January 2012.
A new autoloader was implemented and some classes where renamed to use it. Original classes have been retained but will be deprecated in 12.3.
- JRule renamed to JAccessRule.
- JRules renamed to JAccessRules.
- JCli renamed to JApplicationCli.
- JWeb renamed to JApplicationWeb.
- All class members of JFTP except JFTP::$instances are now private.
- JError::$_error is now protected.
- JRequest::_cleanArray() has been removed.
- JArchiveGzip:: $_flags and JArchiveGzip:: $_data are now private.
- JArchiveTar:: $_types, JArchiveTar:: $_flags, JArchiveTar:: $_data and JArchiveTar:: $_metadata are now private.
- JArchiveZip:: $_methods, JArchiveZip:: $_ctrlDirHeader, JArchiveZip:: $_ctrlDirEnd, JArchiveZip:: $_fileHeader and JArchiveZip:: $_data are now private.
- JSimpleXML:: $_parser, JSimpleXML:: $_xml and JSimpleXML:: $_stack are now private.
- In JComponentHelper::renderComponent the execution of the component is moved to the new function JComponentHelper::executeComponent. A component cannot change or use any of the (internal) variables of renderComponent that might be used by the function later on, like $task or $option.
- The "onPrepareUserProfileData" event has been removed. Listen for the "onContentPrepareData" with a context of "com_users.profile" instead.
Scheduled to be released end of Q1 2012.
- Content package (Universal Content Model)
- Feed package (to replace SimplePie)
- StringInflector class
- More database support (PDO drivers, Postgres, Oracle)
- Simplification and rationalisation of the MVC classes (including, but not limited to splitting into separate model, view and controller packages).
- Review input and output filtering (also looking at pluggable filter types).
- Simplify cache package and handlers.
- Refactor/replace file package with stream handlers.
- Aggressive review of API that is CMS specific and should be removed from the core platform.
- JError - use PHP 5 exception handling as a replacement.
- JCategories - downstream users add to their local API.
- JCategoriesNode - downstream users add to their local API.
- JMenu - downstream users add to their local API.
- JController properties $_acoSection and $_acoSectionValue.
- JController methods authorize (use authorise) and setAccessControl (use JAccess).
- JObject::toString (replaced with magic __toString).
- JDatabase properties $errorNum, $errorMsg, $hasQuoted, $quoted. - Partially complete in #743
- JDatabase* methods addQuoted, debug, getErrorMsg, getErrorNum, getEscaped, getTableFields, getTicker, isQuoted, hasUtf, explain, loadResultArray, nameQuote, queryBatch, stdErr. - Partially complete in #743
- JTable methods canDelete and toXml. - Complete (#768)
- JRequest (use JInput via dependancy injection instead).
- JHtmlBehavior method mootools. - Complete (#755)
- JHtmlGrid method access. - Complete (#755)
- JHtmlImage methods site and administrator. - Complete (#755)
- JHtmlList methods accesslevel, specificordering and category. - Complete (#755)
- JHtmlSelect method optgroup. - Complete (#755)
- JElement and all derived classes. - Complete (#744)
- JPane. - Complete (#755)
- JParameter. - Complete (#744)
- JLanguage methods getPluralSufficesCallback, _parseLanguageFiles, _parseXMLLanguageFiles and _parseXMLLanguageFile (all functionality still available but using different method names). - Complete (#757)
- JLog property $legacy and methods getInstance and addEntry.
- JRegistry methods loadXml, loadIni, loadJson, makeNameSpace, getNameSpaces, getValue, setValue and loadSetupFile. - Complete (#759)
- JUpdater method arrayUnique.
- User package constants JAUTHENTICATE_STATUS_SUCCESS, JAUTHENTICATE_STATUS_CANCEL and JAUTHENTICATE_STATUS_FAILURE. - Complete (#770)
- JUser property $usertype and methods authorize and authorisedLevels (both methods changed name). - Complete (#770 and #773)
- JDate property $offsets and methods setOffset and toFormat. - Complete (#772)
- JSimpleXml. - Complete (#753)
- JUtility methods sendMail, sendAdminMail, getHash, getToken, isWinOs, dump, array_unshift_ref and return_bytes.
- JXmlElement methods data and getAttribute.
- JFactory method getXmlParser. - Complete (#763)
- JBrowser
- JNode
- JTree
- JInstaller methods getOverwrite and getUpgrade, valid use of tag in extension manifests. - Complete (#771)
- Dropped support for com_install and com_uninstall and for client=both in language metafile tag. Removed code which checked for plugins with CMS 1.5 file structure.
Scheduled to be released end of Q2 2012.
Scheduled to be released end of Q3 2012.
- JObservable
- JObserver
- JFactory::_createConfig
- JFactory::_createSession
- JFactory::_createDbo
- JFactory::_createMailer
- JFactory::_createLanguage
- JFactory::_createDocument
- JUser::getParameters
Scheduled to be released end of Q4 2012.
The future goals for any version of the platform.
- Refactoring to improve use of dependancy injection, employing composition over inheritance.
- Improve implementation and usage of interfaces.
- Employ PHP native classes more widely (exceptions, streams, SPL, etc).
- Testing code coverage of all packages to exceed 80%.
- Provision of a device independent web services layer.