This repository has been archived by the owner on Nov 26, 2017. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 297
Roadmap
eddieajau edited this page Mar 25, 2012
·
32 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.
- JTableUser $this->groups in the store and load methods now is an associative array of id => id rather than title => id. Use JAccess getGroupsByUser to get a lit of names.
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.
- #780 JController properties $_acoSection and $_acoSectionValue.
- #780 JController methods authorize (use authorise) and setAccessControl (use JAccess).
- #779 JObject::toString (replaced with magic __toString).
- #743 (work in progress) JDatabase properties $errorNum, $errorMsg, $hasQuoted, $quoted. - Partially complete in #743
- #743 (work in progress) JDatabase* methods addQuoted, debug, getErrorMsg, getErrorNum, getEscaped, getTableFields, getTicker, isQuoted, hasUtf, explain, loadResultArray, nameQuote, queryBatch, stdErr.
- #768 JTable methods canDelete and toXml.
- JRequest (use JInput via dependancy injection instead).
- #755 JHtmlBehavior method mootools.
- #755 JHtmlGrid method access.
- #755 JHtmlImage methods site and administrator.
- #755 JHtmlList methods accesslevel, specificordering and category.
- #755 JHtmlSelect method optgroup.
- #744 JElement and all derived classes.
- #755 JPane.
- #744 JParameter.
- #757 JLanguage methods getPluralSufficesCallback, _parseLanguageFiles, _parseXMLLanguageFiles and _parseXMLLanguageFile (all functionality still available but using different method names).
- JLog property $legacy and methods getInstance and addEntry.
- #759 JRegistry methods loadXml, loadIni, loadJson, makeNameSpace, getNameSpaces, getValue, setValue and loadSetupFile.
- JUpdater method arrayUnique.
- #770 User package constants JAUTHENTICATE_STATUS_SUCCESS, JAUTHENTICATE_STATUS_CANCEL and JAUTHENTICATE_STATUS_FAILURE.
- #770, 773 JUser property $usertype and methods authorize and authorisedLevels (both methods changed name).
- #772 JDate property $offsets and methods setOffset and toFormat.
- #753 JSimpleXml
- JUtility methods sendMail, sendAdminMail, getHash, getToken, isWinOs, dump, array_unshift_ref and return_bytes.
- JXmlElement methods data and getAttribute.
- #763 JFactory method getXmlParser.
- JBrowser
- JNode
- JTree
- #771 JInstaller methods getOverwrite and getUpgrade, valid use of tag in extension manifests.
- #790 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.
- #1031 Protected property _tz in JDate was renamed to tz.
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.