* Add aasm features of ActiveRecord to Sequel! :)
* All specs pass for sequel, activerecord, and mongoid.
* Refactor Sequel models to be namespaced under “Sequel”. We
should do something similar for ActiveRecord in the specs
to avoid collisions.
Addresses #474
(cherry picked from commit df97ce754f47864abbcb837227da5c4d0ff77289)
The problem is that the record might already have a state, which was
just not loaded due to explicit `select'. In this case, AASM should not
try to write the initial state into database.
I am trying to migrate some activerecord code to sequel, and this makes
aasm work for sequel out of the box. This is not yet feature complete
as for activerecord, missing some scope related features. However this
could be a start, and to be honest, since we're not using them, this is
far good enough for us.
I have tried my best to make this aligned with activerecord and mongoid,
and I've overridden `aasm_read_state` for sequel, because there's no
`new_record?` but only `new?` in sequel, and there's no `blank?`,
either. (which I believe is provided in activesupport, which sequel
does not depend on, and I don't want to force people to depend on that.)
Thanks for considering.