2011-11-26 00:11:30 +01:00
# CHANGELOG
2014-11-16 22:59:35 +01:00
## 4.1.0 (not yet released)
2014-11-24 23:50:04 +01:00
* `aasm_column` has been removed. Use `aasm.attribute_name` instead
* `aasm_human_event_name` has been removed. Use `aasm.human_event_name` instead
2014-11-28 22:22:43 +01:00
## 4.0.4 (not yet released)
* bugfix: avoid Rails autoloading conflicts (see [issue #137 ](https://github.com/aasm/aasm/issues/137 ) and see [issue #139 ](https://github.com/aasm/aasm/issues/139 ) for details)
2014-11-25 22:23:23 +01:00
## 4.0.3
2014-11-24 23:50:04 +01:00
2014-11-25 22:23:23 +01:00
* bugfix: fire guards only once per transition, part 2 (see [issue #187 ](https://github.com/aasm/aasm/issues/187 ) for details)
2014-11-24 23:50:04 +01:00
* `aasm_column` is deprecated. Use `aasm.attribute_name` instead
2014-11-16 22:59:35 +01:00
2014-11-24 13:46:15 +01:00
## 4.0.2
* bugfix: really support block-guards (defined within a transition block) (see [issue #186 ](https://github.com/aasm/aasm/issues/186 ) for details)
2014-11-19 23:34:39 +01:00
## 4.0.1
* fire guards only once per transition (see [issue #184 ](https://github.com/aasm/aasm/issues/184 ) for details)
2014-11-24 23:50:04 +01:00
* `aasm_human_event_name` is deprecated, use `aasm.human_event_name` instead
2014-11-19 23:34:39 +01:00
2014-11-15 17:45:35 +01:00
## 4.0.0
2013-11-18 23:21:55 +01:00
2014-11-15 17:45:35 +01:00
* support `if` and `unless` guard syntax: (see [issue #179 ](https://github.com/aasm/aasm/issues/179 ) and [issue #181 ](https://github.com/aasm/aasm/issues/181 )), thanks to [@bigtunacan ](https://github.com/bigtunacan )
2014-05-18 14:21:35 +02:00
* may configure to not allow direct assignment for persisted AASM models (see [issue #53 ](https://github.com/aasm/aasm/issues/53 ))
2014-03-17 21:58:44 +01:00
* **DSL change**: callbacks don't require `to_state` parameter anymore, but still support it
2013-11-18 23:27:34 +01:00
(closing issues
[#11 ](https://github.com/aasm/aasm/issues/11 ),
[#58 ](https://github.com/aasm/aasm/issues/58 ) and
2013-11-30 15:14:52 +01:00
[#80 ](https://github.com/aasm/aasm/issues/80 )
2013-11-18 23:27:34 +01:00
thanks to [@ejlangev ](https://github.com/ejlangev ))
2014-03-17 21:58:44 +01:00
* **DSL change**: `after_commit` hooks are now event-based (see [issue #112 ](https://github.com/aasm/aasm/issues/112 ))
2014-09-09 23:04:47 +02:00
* **DSL change**: event and state callbacks have been re-ordered; state callbacks are not run anymore if any guard fails
2014-09-12 14:30:36 +02:00
* **DSL change**: `:on_transition` renamed to `:after`
* **DSL change**: `:on_transition` renamed to `:after`
* **DSL change**: transition `:after` binding changed (see [issue #59 ](https://github.com/aasm/aasm/issues/59 ), thanks to [@stiff ](https://github.com/stiff ))
2014-10-12 15:46:11 +02:00
* **DSL change**: instance-based events inspection now returns event instances (instead of the event names as symbol)
2014-10-12 15:57:56 +02:00
* **DSL change**: instance-based permissible_events has been removed in favor or events(:permissible => true)
2014-10-12 16:16:01 +02:00
* **DSL change**: class-based events now returns a list of Event instances (instead of a hash with event names as keys)
2014-10-13 23:24:00 +02:00
* **DSL change**: renamed permissible states and events to permitted states events
2014-11-06 00:02:13 +01:00
* removed deprecated methods (mostly the ones prefixed with `aasm_` )
2013-11-18 23:21:55 +01:00
2014-09-12 11:42:01 +02:00
## 3.4.0
* allow retrieving the current event (`aasm.current_event` ) (see [issue #159 ](https://github.com/aasm/aasm/issues/159 ) and [issue #168 ](https://github.com/aasm/aasm/issues/168 ))
2014-08-20 21:46:57 +02:00
## 3.3.3
2014-08-17 18:42:19 +02:00
* bugfix: support reloading development environment in Rails (see [issue #148 ](https://github.com/aasm/aasm/issues/148 ))
2014-08-16 13:04:15 +02:00
## 3.3.2
2014-08-16 11:32:35 +02:00
2014-08-16 13:02:45 +02:00
* bugfix: avoid conflicts with `failed` and `fired` event names (see [issue #157 ](https://github.com/aasm/aasm/issues/157 )), thanks to [@MichaelXavier ](https://github.com/MichaelXavier )
2014-08-16 11:32:35 +02:00
* bugfix: not using transactions unless saving to the database (see [issue #162 ](https://github.com/aasm/aasm/issues/162 ) and [issue #164 ](https://github.com/aasm/aasm/issues/164 )), thanks to [@roberthoner ](https://github.com/roberthoner )
* bugfix: `after_commit` should only run if saving to the database (see [issue #151 ](https://github.com/aasm/aasm/issues/151 )), thanks to [@ivantsepp ](https://github.com/ivantsepp )
2014-07-12 16:09:53 +02:00
## 3.3.1
2014-07-12 15:24:10 +02:00
* bugfix: permissible events will respect given `guards` (see [issue #150 ](https://github.com/aasm/aasm/issues/150 ))
## 3.3.0
2014-07-06 18:41:44 +02:00
* support for Rails 4.1 enum fields (see [issue #124 ](https://github.com/aasm/aasm/issues/124 ), thanks to [@bkon ](https://github.com/bkon ))
* bugfix: allow lazy-evaluation for Rails 3 scopes (see [issue #144 ](https://github.com/aasm/aasm/issues/144 ), thanks to [@laurens ](https://github.com/laurens ))
2014-06-14 22:15:16 +02:00
## 3.2.1
* bugfix: permissible_events and events did not contain events with an empty "from" transition (see [issue #140 ](https://github.com/aasm/aasm/issues/140 ) and [issue #141 ](https://github.com/aasm/aasm/issues/141 ), thanks to [@daniel-rikowski ](https://github.com/daniel-rikowski ))
2014-05-16 22:00:18 +02:00
## 3.2.0
2014-05-05 21:56:37 +02:00
* support [Sequel ](http://sequel.jeremyevans.net/ ) (see [issue #119 ](https://github.com/aasm/aasm/issues/119 ), thanks to [@godfat ](https://github.com/godfat ))
2014-05-16 22:00:18 +02:00
* may not fire an unknown event (see [issue #128 ](https://github.com/aasm/aasm/issues/128 )
2014-05-05 21:56:37 +02:00
2014-03-01 15:35:20 +01:00
## 3.1.1
* bugfix: don't require ActiveRecord for localizing AASM event and state name (see [issue #113 ](https://github.com/aasm/aasm/issues/113 ), thanks to [@silentshade ](https://github.com/silentshade ))
2014-01-29 22:19:24 +01:00
## 3.1.0
2014-01-11 13:11:54 +01:00
* validating the current state (see [issue #95 ](https://github.com/aasm/aasm/issues/95 ), thanks to [@ivantsepp ](https://github.com/ivantsepp ))
2014-01-24 12:02:22 +01:00
* allow configuring behavior of nested transactions (see [issue #107 ](https://github.com/aasm/aasm/issues/107 ))
* support multiple guards per transition
* support event guards (see [issue #85 ](https://github.com/aasm/aasm/issues/85 ))
2014-01-27 21:51:38 +01:00
* support reading from- and to-state during on_transition callback (see [issue #100 ](https://github.com/aasm/aasm/issues/100 ))
2014-01-11 13:11:54 +01:00
2014-01-11 12:45:42 +01:00
## 3.0.26
2014-01-11 13:11:54 +01:00
* support state.human_name (aliased to state.localized_name) (see [issue #105 ](https://github.com/aasm/aasm/issues/105 ))
2014-01-11 12:45:42 +01:00
2013-12-16 23:42:50 +01:00
## 3.0.25
2013-12-16 23:45:46 +01:00
* initialize the state even if validation is skipped (for ActiveRecord and Mongoid persistence) (see [issue #103 ](https://github.com/aasm/aasm/issues/103 ), thanks to [@vfonic ](https://github.com/vfonic ) and [@aaronklaassen ](https://github.com/aaronklaassen ))
2013-12-16 23:42:50 +01:00
2013-11-20 21:45:52 +01:00
## 3.0.24
* added support for event blocks (thanks to [@Intrepidd ](https://github.com/Intrepidd ))
2013-11-18 23:21:55 +01:00
2013-10-24 15:29:38 +02:00
## 3.0.23
* added support for `after_commit` callback (transaction support) (thanks to [@tisba ](https://github.com/tisba ))
2013-08-29 21:42:10 +02:00
## 3.0.22
2013-08-29 21:41:45 +02:00
* fixed [issue 88 ](https://github.com/aasm/aasm/issues/88 ): wrong number of arguments for transaction method
2013-08-27 23:12:18 +02:00
## 3.0.21
* support nested ActiveRecord transactions ([@ozeias ](https://github.com/ozeias ))
* allow overwriting of events, can be very useful with inheritance ([@Intrepidd ](https://github.com/Intrepidd ))
2013-08-06 16:55:32 +02:00
## 3.0.20
* added configuration option to disable automatic scope creation
2013-05-29 23:30:24 +02:00
## 3.0.19
2013-03-15 00:00:22 -04:00
2013-05-30 00:02:09 +02:00
* fixed deprecation warning with *Rails 4* (`Relation#update_all` with conditions is deprecated)
2013-05-30 00:04:52 +02:00
* fixing [issue #69 ](https://github.com/aasm/aasm/issues/69 ) ( *ActiveRecord* scopes are not chainable)
2013-05-29 23:19:04 +02:00
2013-05-16 00:43:48 +02:00
## 3.0.18
2013-05-30 00:02:09 +02:00
* fixing [issue #66 ](https://github.com/aasm/aasm/issues/66 ) (state methods not reflecting the current state)
2013-05-16 00:43:48 +02:00
2013-04-28 18:13:20 +02:00
## 3.0.17
2013-05-30 00:02:09 +02:00
* supporting instance level inspection for states (including permissible state, see [issue #54 ](https://github.com/aasm/aasm/issues/54 ))
2013-03-15 00:00:22 -04:00
* added autocreation of constants for each state ([@jherdman ](https://github.com/jherdman ))
2013-01-16 22:00:54 +13:00
## 3.0.16
* added autocreation of state scopes for Mongoid (thanks to [@jonnyshields ](https://github.com/johnnyshields ))
2012-12-27 10:23:41 +13:00
## 3.0.15
2013-05-30 00:02:09 +02:00
* added support for localized state names (on a class level, like `Record.aasm.states.map(&:localized_name)` )
2012-12-27 10:23:41 +13:00
2012-11-06 11:51:05 +13:00
## 3.0.14
* supporting event inspection for to-states transitions (`Event#transitions_to_state?` )
2012-10-24 21:03:09 +13:00
## 3.0.13
2012-11-06 11:51:05 +13:00
* supporting *ActiveRecord* transactions when firing an event
2012-10-24 21:03:09 +13:00
2012-10-19 23:05:43 +13:00
## 3.0.12
2012-11-06 11:51:05 +13:00
* `aasm_from_states_for_state` now supports to filter for specific transition
2012-10-19 23:05:43 +13:00
2012-10-19 22:44:20 +13:00
## 3.0.11
2012-11-06 11:51:05 +13:00
* added class method `aasm_from_states_for_state` to retrieve all from states (regarding transitions) for a given state
2012-10-19 22:44:20 +13:00
2012-10-19 20:22:00 +13:00
## 3.0.10
2013-05-30 00:04:52 +02:00
* added support for transitions from all other states (thanks to [@swrobel ](https://github.com/swrobel ))
2012-10-19 20:22:00 +13:00
2012-09-26 12:35:13 +12:00
## 3.0.9
2012-11-06 11:51:05 +13:00
* guard checks (e.g. `may_edit?` ) now support guard parameters as well
2012-09-26 12:35:13 +12:00
2012-06-17 18:13:07 +12:00
## 3.0.8
* fixed issue with generating docs using yard
2012-06-07 09:05:22 +12:00
## 3.0.7
2012-06-06 22:32:52 +12:00
2013-05-30 00:04:52 +02:00
* removed deprecation warning when localizing aasm state names (look at [issue #38 ](https://github.com/rubyist/aasm/issues/38 ) for details)
2012-06-06 22:32:52 +12:00
2012-05-17 22:05:43 +12:00
## 3.0.6
* bugfix: if configured to skip validation the code does not validate anymore
2012-04-18 08:36:45 +12:00
## 3.0.5
* bugfix: get rid of error with old rubygems versions
2012-04-02 22:11:35 +12:00
## 3.0.4
* bugfix: Subclasses of aasm-enabled classes don't lose settings anymore (thanks to codez)
2012-02-23 00:08:09 +13:00
## 3.0.3
* bugfix: ActiveRecord scopes are generated when using the new DSL
2012-01-16 17:42:53 +01:00
## 3.0.2
2012-01-16 17:27:15 +01:00
* ActiveRecord persistence can ignore validation when trying to save invalid models
2011-12-21 12:39:02 +01:00
## 3.0.1
* added support for Mongoid (Thanks, Michał Taberski)
2011-11-26 21:11:57 +01:00
## 3.0.0
* switched documentation to the new DSL
* whiny transactions: by default, raise an exception if an event transition is not possible
* you may disable whiny transactions
2012-11-06 11:51:05 +13:00
## 2.4.0
2011-11-26 00:11:30 +01:00
* supporting new DSL (which is much shorter)
## 2.3.1
* bugfix: avoid naming conflict with i18n
## 2.3.0
* supporting i18n
* supporting regular expressions for hash values and strings