Recently, three new validation methods have been added to the core validation class and hence you can use three more validation rules in your models: boolean, inList, and time.
boolean is self-explanatory: it validates whether a field contains a boolean value (i.e. 0, 1, “0”, “1”, false, or true). Example:
var $validate = array('is_enabled' => array('rule' => array('boolean')));
inList ensures that the respective field only contains a value from the defined array. It is case-sensitive, i.e. if you use the rule from the example below, then the value “Red” would be invalid.
var $validate = array('color' => array('rule' => array('inList', array('red', 'green', 'blue'))));
time determines whether a field contains a valid time value. It supports both the 24 hour format (e.g. 08:10:10) and the 12 hour format (e.g. 8:10:10am). The minutes and seconds are optional in both cases.
var $validate = array('starttime' => array('rule' => array('time')));
Another recent change affected View::renderElement(): it has been deprecated in favor of View::element():
$this->renderElement('my_element', array('param1' => 'a value')); becomes $this->element('my_element', array('param1' => 'a value'));
I don’t know why View::renderElement() was deprecated and not View::element(), as I think the method name “renderElement” is more expressive than “element”.
Anyway, happy baking :)