Roadmap
This roadmap is a general overview of features and when they are
currently planned for. This list is tentative and subject to
change.
3.0 (late 2012 / early 2013)
Drop support for PHP 5.2.x.
Only support PHP 5.4.0+.
Add namespaces.
Finish
PSR0 implementation.
Implement
PSR1
Router changes: mark_story
Remove named parameters
Add support for named routes as a method to optimize reverse
routing.
Add improved routing prefixes. Use namespaced classes instead
of prefixed methods. e.g
App\Controller\Admin\PostsController::index().
Re-write model layer:
New connection layer using PDO as a base. Also support native
drivers where required.
New query builder objects that support fluent query
building.
Prepared statement abstraction for native/pdo drivers.
Enhanced richer datatype system that provides a pluggable type
system allowing features like MongoDate to easily be integrated, or
custom types for specific databases.
Return objects from queries.
Fix frankenstein API. Provide cleaner separation between
record/entity and table/collection objects/concepts.
Expose a richer query API.
Create traits where possible.
✓ Improve bootstrapping process to allow app developers
more/full control.
✓ Use composer for installing CakePHP.
✓ Provide a way to create new applications using
composer's create-project command.
Remove methods deprecated in 2.x
Remove compatibility layers for the event system.
Remove ObjectCollection::trigger() in favour directly using the
event system.
✓ Remove logging parameter backwards compatibility.
markstory
Remove BC parameter juggling in TimeHelper/CakeTime.
Use bcrypt as the default password hashing algorithm.
Remove JsHelper and associated code.
Extract a request object in HttpSocket.
Attempt to share code between client and server HTTP request
objects.
Rewrite PaginatorHelper HTML generation. Always return a
consistent number of HTML elements for pagination links. The goal
is to make working with CSS frameworks simpler, and require fewer
options.
2.3
✓ Deprecate MediaView and move it's functionality to
CakeResponse. ADmad
✓ Make Json/XmlView classname configurable.
Ceeram
✓ Add filesize() validation method and
CakeNumber::fromReadableSize(). Ceeram
✓ Add support for biginteger.
✓ Add support for SSL certificate verification in
HttpSocket.
✓ Add support for TEXT indexes in MySQL.
✓ Add support for bcrypt hashing and authentication
adapter.
2.2 (mid 2012)
✓ New Set class (Hash?) mark_story
Improve API consistency.
Drop inconsistently implemented features (xpath)
Provide more consistent path syntax.
Split methods where possible.
Reduce recursion to improve performance.
✓ Namespaced keys in Cache engines.
jose_zap
✓ Dispatcher helpers to act as a middleware and act
before the route is dispatched. jose_zap
✓ Add support for timezone and DateTime objects in
CakeTime ADmad, jellehenkens
✓ Redis and Memcached cache engines
jose_zap
✓ Extract model validation into separate object
Ceeram, tpl0ch and jose_zap
✓ Configure::dump() using configured engines
mark_story
✓ Fix paginating and count Ceeram
✓ Move most logic from DbAcl adapter to Permission model
Ceeram
✓ Lazy load helpers jose_zap
2.1 (late 2011 - early 2012)
Create an easier to use IniAcl that works well with
AuthComponent and solves simple group/role based permissions.
✓ Content-Type sensitive generated error pages. (xml,
json, etc.)
✓ App::build() can register new packages.
✓ TextHelper::autoLinkXXX escapes input.
Additional Router improvements.
✓ /** syntax for getting all trailing
arguments as a single parameter.
✓ Multiple test connections, for test fixtures. #1839
TimeHelper improvements. See #1790
Configure::dump() for creating config files based on different
reader formats.
✓ Change how 'between' works with radio buttons #1992
✓ Add filesize to File::info() https://github.com/cakephp/cakephp/pull/202
✓ CakeRequest improvements #1995
✓ Debugger improvements #1473
✓ Improve stack traces on error pages to contain
excerpts of files in the stack trace.
✓ View blocks and view extensions
mark_story
✓ Add support for Plugin.view in elements,
views, and layouts. mark_story & ceeram
✓ Conditional view rendering and correct response status
based on request headers and response cache settings
jose_zap
✓ Move AppModel, AppController and PagesController out
of core to app ADmad
✓ Priority based triggering of callbacks for objects in
ObjectCollection ADmad
✓ General purpose Events system
2.0 (2011)
✓ Drop support for PHP4.
✓ Remove PHP4 workarounds.
✓ Add PHP5 visibility keywords and fix access violations
internally.
✓ Convert pseudo static classes, to be true static
(Cache, Router, App, Configure)
✓ Lazy loading Model associations, components, and
helpers.
✓ Decouple components like Auth and Email.
✓ Decouple CacheHelper and View
✓ Clean up and improve the console framework.
✓ Rebuild Xml using SimpleXml/DOMDocument.
✓ Use exceptions, abstract classes, and interfaces where
logical.
✓ Implement collection classes for Helper, Components,
Behaviors and Tasks.