2012-12-08

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.

Show more