Fetching contributors…
Cannot retrieve contributors at this time
107 lines (73 sloc) 4.36 KB
2013-05-21: Added different method of converting from String to date using
iOS DataDetector instead of dateFromNaturalLanguageString.
2013-04-13: WARNING: Possible breaking change. Hook methods changed to send
affected object. So, if you have:
def after_create
You will get an error about expecting 1 argument, got 0
The correct signature is:
def after_create(sender)
2013-03-15: Fixed bug where created_at and updated_at were being incorrectly
when restored from persistence (thanks Justin McPherson for finding
that).
Moved all NSCoder stuff out of Model to ArrayModelAdapter.
2013-02-19: Included Doug Puchalski's great refactoring of Model that provides an
adapter for ArrayModelAdapter. WARNING!!! This is a breaking change
since version 0.3.8. You will have to include:
MotionModel::ArrayModelAdapter
after including MotionModel::Model to get the same functionality.
Failure to include an adapter (note: spelling counts :) will result
in an exception so this will not quietly fail.
2013-01-24: Added block-structured transactions.
2013-01-14: Fixed problem where data returned from forms was of type NSString, which
confused some monkey-patching code.
Changed before_ hooks such that handlers returning false would terminate
the process. So, if before_save returns anything other than false, the
save continues. Only if before_save returns false does the save get
interrupted.
Fixed immutable string issue in validations.
2013-01-09: Added automatic date/timestamp support for created_at and updated_at columns
Added Hash extension except, Array introspection methods has_hash_key? and
has_hash_value?
Commit of Formotion module including optional inclusion/suppression of the
auto-date fields
Specs
2012-12-30: Added Formotion module. This allows for tighter integration with Formotion
Changed options for columns such that any arbitrary values can be inserted
allowing for future expansion.
2012-12-14: Added lots of framework to validations
Added validations for length, format, email, presence
Added array type (thanks justinmcp)
2012-12-07: Added MIT license file.
InputHelpers: Whitespace cleanup. Fixed keyboard show/hide to scroll to correct position.
MotionModel::Column: Whitespace cleanup, added code to support cascading delete (:dependent => :destroy)
MotionModel::Model: Whitespace cleanup, added code to support cascading destroy, destroy_all, and cascading if specified.
relation_spec.rb: removed delete tests into cascading_delete_spec.rb
2012-12-06: Work on has_many to add cascading delete
MotionModel: POTENTIAL CODE-BREAKING CHANGE. has_many now takes two arguments
only. Previously, it would allow a list of symbols or strings,
now it conforms more to the Rails way of one call per relation.
E.g.:
has_many :pets
-or-
has_many :pets, :delete => :destroy # cascade delete.
2012-10-14: Primary New Feature: Notifications
MotionModel: Added bulk update, which suppresses notifications and added it to delete_all.
MotionModel: Added notifications of type MotionModelDataDidChangeNotification on data change.
MotionModel: Added classification code to save to differentiate between save-new and update
MotionModel: Added notification calls to save and delete
2012-09-05: Basically rewrote how the data is stored.
The API remains consistent, but a certain amount of
efficiency is added by adding hashes to map column names
to the column metadata.
* Type casting now works, and is a function of initialization
and of assignment.
* Default values have been added to fill in values
if not specified in new or create.
2012-09-06: Added block-style finders. Added delete method.
2012-09-07: IMPORTANT! PLEASE READ! Two new methods were added
to MotionModel to support persistence:
Task#serialize_to_file(file_name)
Task.deserialize_from_file(file_name)
Note that serialize operates on an instance and
deserialize is a class method that creates an
instance.