* Add ability to define strict validation(with :strict => true option) that always raises exception when fails *Bogdan Gusiev*
* Deprecate "Model.model_name.partial_path" in favor of "model.to_partial_path" *Grant Hutchins, Peter Jaros*
* Provide mass_assignment_sanitizer as an easy API to replace the sanitizer behavior. Also support both :logger (default) and :strict sanitizer behavior *Bogdan Gusiev*
## Rails 3.1.0 (August 30, 2011) ##
* Alternate I18n namespace lookup is no longer supported.
Instead of "activerecord.models.admins.post", do "activerecord.models.admins/post" instead *José Valim*
* attr_accessible and friends now accepts :as as option to specify a role *Josh Kalderimis*
* Add support for proc or lambda as an option for InclusionValidator,
ExclusionValidator, and FormatValidator *Prem Sichanugrist*
You can now supply Proc, lambda, or anything that respond to #call in those
validations, and it will be called with current record as an argument.
That given proc or lambda must returns an object which respond to #include? for
InclusionValidator and ExclusionValidator, and returns a regular expression
object for FormatValidator.
* Added ActiveModel::SecurePassword to encapsulate dead-simple password usage with BCrypt encryption and salting *DHH*
* ActiveModel::AttributeMethods allows attributes to be defined on demand *Alexander Uvarov*
* Add support for selectively enabling/disabling observers *Myron Marston*
## Rails 3.0.7 (April 18, 2011) ##
* No changes.
* Rails 3.0.6 (April 5, 2011)
* Fix when database column name has some symbolic characters (e.g. Oracle CASE# VARCHAR2(20)) #5818#6850*Robert Pankowecki, Santiago Pastorino*
* Fix length validation for fixnums #6556*Andriy Tyurnikov*
* Fix i18n key collision with namespaced models #6448*yves.senn*