CakePHP

Notes:

Release Name: 0.10.8.2047

Notes:
Wow! This release of Cake is amazing. The code is looking really good, and we snuck in a few changes that should get everyone excited. We made this RC5, 
so we can test these changes before releasing the CakePHP .10 stable.
 
 Major Changes:
 1) ability to put /app and /cake core directory anywhere, check out /app/webroot/index.php
 2) /vendors can be in the same place as cake or inside app
 3) /tmp is now inside /app
 4) better plugin setup
 5) take recursive as far as you want on any association
 6) Deletes for HABTM, hasMany, and hasOne
 7) Request Component
 8) Ajax edit in place and slider control
 
 To fully take advantage of plugins you should name the base controller the same as the plugin name. For example, the CakeBlog plugin directory would 
 be called cake_blog. The plugins still need their own app controller and app model, which would still be named CakeBlogAppController and 
 CakeBlogAppModel. Remember that your controllers and models will extend those. But now we also setup a cake_blog_controller.php in our
 /app/plugins/cake_blog/controllers. This will be the first controller accessed when going to http://example.com/cake_blog/. This plugin system may seem
  somewhat inflexible, but we felt this was one of those places to sacrifice flexibility for stability. 
 
 The deletes are really nice, but you have to be careful. There are two controls, the dependent param in the association array. If dependent is true 
 all associated records are deleted. If you are using the string based association setup, then dependent defaults to false, so you would have to switch 
 to the array based approach. If dependent is true you can still turn of deletes using the second param of the Model::del() method. Set it to false and 
 the associated records will not be deleted.
 
 But the best thing about this release is its stability. There were over 100 commits since the last release and more than 400 tickets have been fixed 
 since the development release over 6 months ago.
 
 Remember that /app/webroot, /app/config/core.php, and /app/config/database.php should be updated. This should be the last time we need to change these 
 files, so get the upgrade and prepare for the stable release. 
 
Happy Baking.

Cake Software Foundation, Inc.


Changes: Refactored and removed uneeded regex checks More bug fixes for Disaptcher More changes to dispatcher Fixed links Revision: 2040 Author: phpnut Date: 10:42:09 PM, Saturday, February 18, 2006 Message: Refactoring dispatcher one last time Refactoring Dispatcher::baseUrl(); Cleaning up code formating Added fix for parse error when using PHP 4 Fixed dispatcher to set the proper paths when app/webroot is moved outside of a normal cake install path and placed deeper in the web path of the DOCUMNET ROOT Added ability to turn off the cascading deletes when using Model::del($id, false); Corrected association cascading for hasOne and hasMany. Implemented cascading delete for hasMany, and hasOne associations. Renamed Model::__deleteJoins() to Model::__deleteMulti(); Implemented Model::__deleteJoins() to delete HABTM associations. A little more work on plugin to set some default routing. Changed DboSource::field() so the name() is not called for some field variables. Changes made in [2022] should only check if the $conditions is not empty. Changed DboSource::conditions() so it will add the "ticks" needed around the Model.field names. The Model.field name conventions must be used for this to work. Adding fix for Ticket #405 Added fix for Ticket #403 Added patch from Ticket #404. Fixing formatting of files. Fixing formatting of files Fixed bad search and replace Fixing formatting of files Replaced all 3 space indents with 4 space indents Updating variables to use the naming proper conventions Added patch from Ticket #406 Adding fix for Ticket #407. Fix variables that where not formatted per the coding conventions Adding patch from Ticket #401 Adding fixes for session errors posted in the google group. Changed the header for PHP version in the model classes. Change uses() back to require_once Adding reference back to the PHP 4 model Merging changes from model_php5 Fixing recursive associations, adding whitelist to Model::save Added fix for error in CakeSession class. Updated home.thtml Rearranged some of the defines moving the most often changed ones to the top of the script Moved SQL files distributed with the core to app/config/sql/ Removed app/config/routes.php.default Fixed class_exists check in TextHelper adding sql directory Fixed error when cake distribution is installed inside of the DOCUMENT ROOT Adding checks for classes that are already loaded so the require() calls will not error Replacing all require_once() with require() Moved creation of the Dispatcher object to app/webroot/index.php Adding session sql file Fixing session db queries Change the require_once in bootstrap to require. Merged changes John made to the CakeSession database methods Removing some constants that are not needed Adding fix for Ticket #400 Fixing Ticket #348 Fixing Tickets #397 and #399 Fixed callbacks in JavaScript events and Ajax, fixed Controller::beforeRender so you can set view variables, and fixed Ticket #394 Renamed the $dir param to $direction. Added default value to the DboSource::order() $direction param. Adding changes back to the sessions class I reverted in [1984] Changed DboSource?::order() to allow passing an array in the order param Reverting changes from [1983] Merging change from [1966] and [1967] Adding fix for DboSource::order(). This allows setting the order in the find methods. cleaned up code Corrected the array keys in the regex I added Added check to DboMysql::value() that does not add quotes around a numerical value. Refactored DboSource::conditions() adding better regex. Added check for LIKE in a condition array this fixes the = being added. Added fix for Ticket #392 Adding changes suggested in Ticket #381. These have not been fully tested. Added fix for Ticket #391 Added patch from Ticket #390 Adding patch from Ticket #386 Added patch from Ticket #385. Changed wording of a comment. Added patch from Ticket #383 Adding fix for Ticket #395 Adding more detailed comment to path defines Making a few more changes to the path settings fixing path issue with loading PagesController Added model method for getting column types by field Corrected paths to the tmp directory. Making a few more changes to the defines in index.php Moving tmp directory to app Starting separation of core from the application. Adding vendors directory to app directory Finished support for recursive associations. Still needs some testing... Adding fix for Ticket #387, and automagic id's for form inputs Adding fix for error reported in Google Group: http://groups.google.com/group/cake-php/browse_thread/thread/395593a3cea34174 Adding fix for Controller::referer() Added @ before session_destroy() in CakeSession::_destroyInvalid() to suppress warning Fixing Ticket #380, and adding JSON object generator to JavascriptHelper Removing code that is not used in Inflector class Added fix for Ticket #376 Renamed log.php to cake_log.php Added fix for Ticket #371; Moved LogError to bascis.php from log.php Renaming Log class to CakeLog to avoid conflicts with Pear Log class or any other Log class. Added check to File class to load Folder class if it is not in memory already Moved LOG_ERROR define to app/config/core.php Updated Inflector::pluralize(); and Inflector::singularize(); to use some code that is in the new Inflector class from version 1.x.x.x Added fix for Ticket #373 Added fix for Ticket #357 Added patch from Ticket #363 Added fix for Ticket #349 PHP 5 version Added fix for Ticket #349 Adding patches from Ticket #377 Quick URL fix for AjaxHelper::editor Fixing Ticket #375 Adding fix for Ticket #369, plus slider control and Ajax In-Place editor diff patched applied from gwoo Adding fix for Ticket #364 Adding script.ac slider control and fixing Ticket #188 for real this time Docstrings, and some inconsistency fixed. Wrong parameters in one case. Moved them into the signature. Also some code standards fiddling. Some outdated parameters. Added a todo in docstrings. A little refactoring on the findBy<field> and findAllBy<field>. These should both work on PHP 4 now without an issue. Change the condition to be built as an array in DboMysql::query(). Still want to refactor the DboSource::conditions() which is note around line 1058 TODO: Adding fix for association conditions when set in the association array Adding fixes for $recursive Adding fix from Ticket #362