All Versions
45
Latest Version
Avg Release Cycle
62 days
Latest Release
3124 days ago

Changelog History
Page 1

  • v1.2.0 Changes

    March 30, 2013
    • ๐Ÿ‘ 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
  • v1.1.2 Changes

    January 20, 2012
    • ๐Ÿ›  Fix states not being initialized properly on ActiveRecord 3.2+
  • v1.1.1 Changes

    December 31, 2011
    • ๐Ÿ›  Fix fields being defined for Mongoid / MongoMapper state attributes even if they're already defined in the model
    • ๐Ÿšฉ Raise error when states / events are referenced in a definition with different types (e.g. both Strings and Symbols)
    • ๐Ÿ‘ Allow all states / events to be looked up by their string / symbol equivalent
    • ๐Ÿ‘ Allow state_machine to be loaded without extensions to the Ruby core
  • v1.1.0 Changes

    November 13, 2011
    • ๐Ÿ‘ Allow the transitions / known states for an event to be reset
    • Add fire_#{name}_event instance method for firing an arbitrary event on a state machine
    • ๐Ÿ‘Œ Improve InvalidTransition exception messages to include the failure reason(s) in ORM integrations
    • ๐Ÿ’Ž Don't allow around_transitions to attempt to be called in multiple execution contexts when run in jruby
    • ๐Ÿ‘ Allow :from option to be used in transitions defined within state contexts
    • ๐Ÿ›  Fix arguments / block not being preserved when chaining methods defined in state contexts
    • ๐Ÿ›  Fix super not being allowed when a method is defined for multiple state contexts
    • ๐Ÿ”„ Change loopbacks to only cause objects to be persisted when the ORM decides it's necessary, instead of always forcing persistence
    • ๐Ÿ›  Fix Mongoid 2.3.x integrations not initializing dynamic states in the same manner as other integrations with initialize callbacks
  • v1.0.3 Changes

    November 05, 2011
    • ๐Ÿ›  Fix MongoMapper 0.10.0+ integrations not matching versions properly
    • โšก๏ธ Update warnings for method conflicts to include instructions on how to ignore conflicts
    • ๐Ÿ›  Fix state initialization in Mongoid 2.3.x integrations [Durran Jordan]
    • ๐Ÿ›  Fix after_transition callbacks sometimes not running in Mongoid 2.2.x integrations
    • ๐Ÿ”Œ Automatically load the plugins required in Sequel integrations
    • ๐Ÿ‘ Allow all / any matcher helpers to be used when defining states / events
    • ๐Ÿ‘ Allow states / events to be referenced by the string equivalent of their name
    • ๐Ÿ›  Fix observer callbacks being run incorrectly when using nil states in ActiveModel-based integrations
    • โœ‚ Remove ActiveModel Observer method chains in order to better ensure compatibility
    • โšก๏ธ Update DataMapper integration for 1.2.0+ support [Markus Schirp]
    • ๐ŸŒ Provide access to the human state name in invalid_transition translations
    • Add support for i18n keys in the form of #{i18n_scope}.state_machines.#{model_name}.states/events.#{value}
    • Clarify documentation on writing to state machine attributes, using factory_girl and can_#{event} / #{event}_transition helpers
    • โž• Add documentation for dynmically generating state machines
  • v1.0.2 Changes

    August 10, 2011
    • ๐Ÿ‘ Allow transitions to be defined within a state, event, or machine context
    • ๐Ÿ‘‰ Use supported framework hooks for integrating Sequel 3.24.0+
    • โœ… Use appraisal for testing integrations
    • ๐Ÿ‘Œ Improve documentation on the handling of method conflicts
    • โšก๏ธ Update Mongoid integration for 2.1.0+ support
    • ๐Ÿ›  Fix ActiveRecord machine state predicates incorrectly calling superclass implementation when using targeted attributes
    • ๐Ÿ›  Fix error when defining states with the same name as the state's machine in ActiveRecord, MongoMapper, and Mongoid integrations
    • ๐Ÿ›  Fix machine state predicate not calling superclass implementation if defined after machine definition
    • โš  Generate warnings when defining a helper method more than once
    • ๐Ÿ›  Fix multiple machines not being able to target the same attribute if all possible states aren't defined in each
    • ๐Ÿ›  Fix ActiveModel / DataMapper integrations not overriding StateMachine::Machine#after_initialize properly
    • ๐Ÿ‘Œ Improve documentation for overriding states and integration transactions
  • v1.0.1 Changes

    May 30, 2011
    • โž• Add the ability to ignore method conflicts for helpers
    • โš  Generate warnings for any helper, not just state helpers, that has a conflicting method defined in the class
    • ๐Ÿ›  Fix scopes in Sequel not working if the table name contains double underscores or is not a string/symbol
    • โž• Add full support for chaining state scopes within Sequel integrations
    • ๐Ÿ›  Fix Rails 3.1 deprecation warnings for configuring engine locales [Stefan Penner]
  • v1.0.0 Changes

    May 12, 2011
    • Celebrate
  • v0.10.4 Changes

    April 14, 2011
    • ๐Ÿ›  Fix translations not being available under certain environments in Rails applications
  • v0.10.3 Changes

    April 08, 2011
    • ๐Ÿ›  Fix state initialization failing in ActiveRecord 3.0.2+ when using with_state scopes for the default scope