Excellent work guys. It's been great following the progress of this new 
major release. For all the challenges & frustrations (of my own making), 
i'm glad i picked Cake as a learning experience. The framework & the team 
are awesome.
-Joe T.

On Sunday, 28 September 2014 09:49:02 UTC-4, José Lorenzo wrote:
>
> The CakePHP core team is proud to announce the second beta release for 
> CakePHP 
> 3.0.0 <https://github.com/cakephp/cakephp/releases/3.0.0-beta2>.
> It's been a month since our first beta release, and we are excited by the 
> big welcome the community has given to the new version. All the positive 
> feedback and help has been a great motivation for the core team to work 
> harder on improving the developer experience for 3.0.
>
> This will be the last beta release for 3.0, this means that the API is 
> already stabilizing and we're mostly focusing on polishing the current 
> features, performance optimizations, documentation and quickly solving any 
> issues reported in Github.
>
> We've had a very busy month implementing a few missing features we had in 
> our roadmap and upgrading some of the popular plugins for CakePHP.
>
> Below the list of new features and changes that made it into 3.0.0-beta2:
> DebugKit 
>
> Debugging CakePHP 3.0 applications is even better. The new DebugKit is 
> easier to install, faster and looks gorgeous.
>
> DebugKit is a application toolbar that collects useful statistics about 
> your code such as time and memory, executed queries, log messages and view 
> variables. To install Debugkit just use
>
> composer require cakephp/debug_kit "3.0.*-dev"
>
> And add this line to your bootstrap.php file:
>
> Plugin::load('DebugKit', ['bootstrap' => true]);
>
> If you install a new application using the app skeleton 
> <https://github.com/cakephp/app>, DebugKit will be automatically 
> installed for you.
> Database Migrations 
>
> Migrations <https://github.com/cakephp/collection> is now an official 
> CakePHP plugin. It wraps the excellent Phinx <http://phinx.org/> library 
> into a CakePHP shell to avoid repeating configuration strings and add some 
> of the cake experience. A database migration generated by this plugin would 
> look like:
>
> <?phpuse Phinx\Migration\AbstractMigration;class CreateUsersTable extends 
> AbstractMigration {
>     /**     * Change.     */
>     public function change() {
>         // create the table
>         $table = $this->table('users');
>         $table->addColumn('id', 'integer')
>             ->addColumn('username', 'string')
>             ->addColumn('password', 'string')
>             ->addColumn('created', 'datetime')
>             ->create();
>     }
>
> Migrations are reversible. This means that with the same code you can 
> create or rollback the changes done to the database schema.
>
> To install the Migrations plugins run:
>
> composer require cakephp/migrations "dev-master"
>
> And add this line to your bootstrap.php file:
>
> Plugin::load('Migrations');
>
> New Logger interface 
>
> CakePHP has adopted the PSR-3 recommendation for loggers. Now all log 
> engines implement the Prs\Log\LoggerInterface interface. This means that 
> the entire logging system can easily be replaced by other implementations, 
> such as the popular Monolog library <https://github.com/Seldaek/monolog>.
> Integration Tests and Data Integrity 
>
> Testing controllers has always been problematic. While ControllerTestCase 
> solved some of the problems, we identified this class as a source of 
> problems and confusion among our users. We decided to implement the new 
> IntegrationTestCase class as a way totest all aspects of an HTTP request 
> in your application without much mocking being involved. This should help 
> you improve code quality and ensure that your application and routes are 
> working as expected.
>
> We also made the fixtures system better, allowing developers to define and 
> work with foreign key constraints in their database. The fixtures system 
> will now correctly load all data and enable constraints right before your 
> test code is executed.
> New Bake templates 
>
> With the date for a stable release getting closer and closer we decided to 
> give a new look to default baked applications. Hopefully the new look will 
> feel fresher, more modern, and easier to work with.
> Separate packages 
>
> We've seen an increasing interest in using the new ORM outside the 
> framework or within older CakePHP applications. One of our goals since the 
> start has been making this possible. We have already begun the work to 
> split the framework into various standalone components that can be reused 
> and installed with composer. While the ORM has not yet been extracted into 
> its own repository, most of the necessary pre-requisites are complete. As a 
> product of this work, we have already extracted several components out of 
> the main code base:
>
>    - Collections <https://github.com/cakephp/collection>: Provides a set 
>    of tools to manipulate arrays or Traversable objects in an efficient and 
>    elegant way.
>    - Validation <https://github.com/cakephp/validation>: The excellent 
>    and flexible validation library can now be used in any project!
>    - Utility <https://github.com/cakephp/utility>: Provides the Hash, 
>    Inflector, String and Xml classes.
>    - Event <https://github.com/cakephp/event>: Our Signal-Slot (or 
>    Observer Pattern) implementation.
>    - Core <https://github.com/cakephp/core>: The CakePHP core, containing 
>    the Configuration and Plugin management classes.
>
> It is important to note that the these repositories are read-only, 
> development will continue in the main CakePHP repository and code will be 
> synchronized regularly to these splits. Please open any ticket or pull 
> request directly in the main github repository 
> <https://github.com/cakephp/cakephp>.
> ORM Related Improvements 
>    
>    - Added Query::autoFields(). This controls whether the fields for the 
>    main table are automatically selected.
>    - Ability to pass finder options to custom finders from the paginator 
>    by using the finderOptions key.
>    - It is now possible to get the default column values out of the 
>    database using the Schema\Table::defaultValue().
>    - Added accessibleFields as an option key for newEntity() and 
>    patchEntity(). This will allow finer grain control for mass-assignment.
>    - TranslateBehavior automatically finds translations based on the 
>    current application locale.
>    - Table::findOrCreate() was added.
>    - Ability to override the join type for an association using contain() 
>
> Plugin Shells 
>
> Shells in plugins can now be called without prefixing with the plugin 
> name. For example for a do_stuff shell living in the Tools plugin, you 
> can execute:
>
> bin/cake do_stuff
>
> Other improvements 
>    
>    - New uploadedFile validation rule.
>    - Made String::uuid() 3 times faster.
>    - Better exception reporting on fatal errors.
>    - Inflector was optimized for better performance.
>    - Several optimizations in the Hash class.
>    - Added Collection::buffered() to transform non-rewindable iterators 
>    in rewindable ones.
>
> Community Plugins 
>
> More plugins for version 3.0 are starting to pop. Here's a list of what we 
> found interesting:
>
>    - TwigView <https://github.com/WyriHaximus/TwigView> Use Twig as the 
>    default templating engine.
>    - Imagine <https://github.com/burzum/cakephp-imagine-plugin/tree/3.0> 
>    Image manipulation plugin
>    - Geo <https://github.com/dereuromark/cakephp-geo> Contains utility 
>    libraries and behaviors for working with geo data.
>    - Blame <https://github.com/ceeram/blame> Records the user id who 
>    modified a row in the database.
>    - CakePdf <https://github.com/FriendsOfCake/CakePdf/tree/3.0> 
>    Generates PDF files using different engines
>    - Authenticate 
>    <https://github.com/FriendsOfCake/Authenticate/tree/cake3> 
>    Authorization and Authentication adapters
>    - TinyAuth <https://github.com/dereuromark/cakephp-tinyauth> A 
>    lightweight authorization system.
>    - TwitterBootstrap <https://github.com/gourmet/twitter_bootstrap> A 
>    plugin to generate Boostraped interfaces
>    - Whoops <https://github.com/gourmet/whoops> Replaces the default 
>    exception renderer with a nice debugging interface.
>    - Assetic <https://github.com/gourmet/assetic> Minifies and 
>    pre-processes CSS and Javascript We'd like to thank again everyone who has 
>    contributed thoughts, code, documentation or feedback to 3.0 so far.
>
>

-- 
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

--- 
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to cake-php+unsubscr...@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/d/optout.

Reply via email to