State Machine v1.2.0 Release Notes

Release Date: 2013-03-30 // almost 10 years ago
    • 👍 Allow multiple whitelisted / blacklisted :to states when definining transitions
    • 🛠 Fix event attributes not being processed when saved via association autosaving
    • 🛠 Fix Mongoid integration not setting initial state attributes properly for associations
    • Completely rewrite ORM action hooks to behave more consistently across the board
    • 🔄 Change transitions to be executed the same whether using ORM save actions or not
    • 🛠 Fix around_transition callbacks not being executed properly in ORM integrations
    • 🛠 Fix additional transitions not being able to be fired in transition callbacks
    • ➕ Add documentation on the order in which transition callbacks run within ORM integrations
    • ⚡️ Update README to include a topic on explicit vs. implicit event transitions [Nathan Long]
    • 🛠 Fix around_transition pausing not being marked as unsupported for rubinius [Daniel Huckstep]
    • 🛠 Fix all / any / same matchers not being able to be used in :from / :to options in transitions and callbacks
    • 🛠 Fix ActiveModel locale paths not being loaded properly under certain JRuby environments [Brad Heller]
    • Remove dependency on the validation_class_methods plugin for Sequel 2.12.0+ [Casey Howard]
    • ✂ Remove dependency on command-line git binaries from within the gemspec
    • 🛠 Fix deprecation warnings on ruby-graphviz 1.0.3+
    • ⚡️ Update minimum required ruby-graphviz version to 0.9.17
    • 🛠 Fix aliased fields in Mongoid 2.4.0+ not being automatically detected
    • ➕ Add Mongoid 3.0.0+ support
    • 🛠 Fix scopes getting generated multiple times when the singular / plural machine names are the same but of a different type (symbol vs. string)
    • ➕ Add initial support for ActiveRecord / ActiveModel 4.0.0 beta
    • 🛠 Fix static initial states always being set even when the state has already been initialized in non-ORM integrations
    • ⚠ Generate a warning when the ORM's backend and state_machine define conflicting initial states for an attribute
    • 🛠 Fix all Ruby warnings
    • 🛠 Fix callbacks not working for methods that respond via method_missing [Balwant Kane]
    • 🛠 Fix observer callbacks being run when disabled in ActiveModel / ActiveRecord integrations
    • ➕ Add YARD integration for autogenerating documentation / embedding visualizations of state machines
    • 👍 Allow states / events to be drawn with their human name instead of their internal name

Previous changes from v1.1.2

    • 🛠 Fix states not being initialized properly on ActiveRecord 3.2+