Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 313 lines (251 sloc) 16.647 kb
7bca32d @obrie Convert to a more sane CHANGELOG format using rdoc
obrie authored
1 == master
45197b0 @obrie Remove tasks that are no longer being used.
obrie authored
2
1ba38cb @obrie Tag 0.8.1 release
obrie authored
3 == 0.8.1 / 2010-03-14
4
16721fd @obrie Release gems via rake-gemcutter instead of rubyforge
obrie authored
5 * Release gems via rake-gemcutter instead of rubyforge
06b8c1d @obrie Move rake tasks to lib/tasks
obrie authored
6 * Move rake tasks to lib/tasks
cb3a8de Dispatch state behavior to the superclass if it's undefined for a par…
Sandro Turriate and Tim Pope authored
7 * Dispatch state behavior to the superclass if it's undefined for a particular state [Sandro Turriate and Tim Pope]
e25a320 @obrie Fix state / event names not supporting i18n in ActiveRecord
obrie authored
8 * Fix state / event names not supporting i18n in ActiveRecord
216922a Fix original ActiveRecord::Observer#update not being used for non-sta…
Jeremy Wells authored
9 * Fix original ActiveRecord::Observer#update not being used for non-state_machine callbacks [Jeremy Wells]
8ec6741 @obrie Add support for ActiveRecord 3.0
obrie authored
10 * Add support for ActiveRecord 3.0
ff95ec4 @evansj Fix without_{name} scopes not scoping columns to the table in ActiveR…
evansj authored
11 * Fix without_{name} scopes not quoting columns in ActiveRecord [Jon Evans]
12 * Fix without_{name} scopes not scoping columns to the table in ActiveRecord and Sequel [Jon Evans]
a7118d7 @obrie Fix custom state attributes not being marked properly as changed in A…
obrie authored
13 * Fix custom state attributes not being marked properly as changed in ActiveRecord
d371f43 @obrie Properly attribute authors in CHANGELOG
obrie authored
14 * Fix tracked attributes changes in ActiveRecord / DataMapper integrations not working correctly for non-loopbacks [Joe Lind]
1e9a6eb @obrie Fix plural scope names being incorrect for DataMapper 0.9.4 - 0.9.6
obrie authored
15 * Fix plural scope names being incorrect for DataMapper 0.9.4 - 0.9.6
f6930e8 @obrie Fix deprecation warnings for ruby-graphviz 0.9.0+
obrie authored
16 * Fix deprecation warnings for ruby-graphviz 0.9.0+
4d62cc1 @chinasaur Add support for ActiveRecord 2.0.*
chinasaur authored
17 * Add support for ActiveRecord 2.0.*
2cf60d0 @obrie Fix default states not getting set in ORM integrations if the column …
obrie authored
18 * Fix nil states being overwritten when they're explicitly set in ORM integrations
19 * Fix default states not getting set in ORM integrations if the column has a default
2ddd583 @obrie Fix event transitions being kept around while running actions/callbac…
obrie authored
20 * Fix event transitions being kept around while running actions/callbacks, sometimes preventing object marshalling
21
6970823 @obrie Tag 0.8.0 release
obrie authored
22 == 0.8.0 / 2009-08-15
23
d40b214 @obrie Add support for DataMapper 0.10.0
obrie authored
24 * Add support for DataMapper 0.10.0
c1cab6f @obrie Always interpet nil return values from actions as failed attempts
obrie authored
25 * Always interpet nil return values from actions as failed attempts
bcaafa8 @obrie Fix loopbacks not causing records to save in ORM integrations if no o…
obrie authored
26 * Fix loopbacks not causing records to save in ORM integrations if no other fields were changed
2736112 @obrie Fix events not failing with useful errors when an object's state is i…
obrie authored
27 * Fix events not failing with useful errors when an object's state is invalid
04b179d @obrie Use more friendly NoMethodError messages for state-driven behaviors
obrie authored
28 * Use more friendly NoMethodError messages for state-driven behaviors
1f7ebc5 @obrie Fix before_transition callbacks getting run twice when using event at…
obrie authored
29 * Fix before_transition callbacks getting run twice when using event attributes in ORM integrations
1141c69 @obrie Add the ability to query for the availability of specific transitions…
obrie authored
30 * Add the ability to query for the availability of specific transitions on an object
66beaf8 @obrie Typos / tweaks in changelogs
obrie authored
31 * Allow after_transition callbacks to be explicitly run on failed attempts
01f2769 @obrie By default, don't run after_transition callbacks on failed attempts
obrie authored
32 * By default, don't run after_transition callbacks on failed attempts
66beaf8 @obrie Typos / tweaks in changelogs
obrie authored
33 * Fix not allowing multiple methods to be specified as arguments in callbacks
ecfc0cf @obrie Allow static initial states to be set earlier in the initialization o…
obrie authored
34 * Fix initial states being set when loading records from the database in Sequel integration
35 * Allow static initial states to be set earlier in the initialization of an object
364ce7b @obrie Use friendly validation errors for nil states
obrie authored
36 * Use friendly validation errors for nil states
dc7cd22 @obrie Fix states not being validated properly when using custom names in Ac…
obrie authored
37 * Fix states not being validated properly when using custom names in ActiveRecord / DataMapper integrations
38
ec98c87 @obrie Tag 0.7.6 release
obrie authored
39 == 0.7.6 / 2009-06-17
40
5f8cd2f @obrie Use :attribute to customize the attribute target and remove :as, assu…
obrie authored
41 * Allow multiple state machines on the same class to target the same attribute
7c49ad3 @obrie Remove :as changelog entry that was reverted to avoid confusion
obrie authored
42 * Add support for :attribute to customize the attribute target, assuming the name is the first argument of #state_machine
02b585f @obrie Add support for customizing generated methods like #{attribute}_name …
obrie authored
43 * Simplify reading from / writing to machine-related attributes on objects
01fd1c4 @mixr Fix locale for ActiveRecord getting added to the i18n load path multi…
mixr authored
44 * Fix locale for ActiveRecord getting added to the i18n load path multiple times [Reiner Dieterich]
b578e79 @bdimcheff Fix callbacks, guards, and state-driven behaviors not always working …
bdimcheff authored
45 * Fix callbacks, guards, and state-driven behaviors not always working on tainted classes [Brandon Dimcheff]
7ecdb97 @obrie Use Ruby 1.9's built-in Object#instance_exec for bound callbacks when…
obrie authored
46 * Use Ruby 1.9's built-in Object#instance_exec for bound callbacks when it's available
4d31342 @obrie Improve performance of cached dynamic state lookups by 25%
obrie authored
47 * Improve performance of cached dynamic state lookups by 25%
48
1bade32 @obrie Tag 0.7.5 release
obrie authored
49 == 0.7.5 / 2009-05-25
50
b75945a @obrie Add built-in caching for dynamic state values when the value only nee…
obrie authored
51 * Add built-in caching for dynamic state values when the value only needs to be generated once
2fc44e5 @obrie Fix flawed example for using record ids as state values
obrie authored
52 * Fix flawed example for using record ids as state values
53 * Don't evaluate state values until they're actually used in an object instance
ed32e60 @obrie Make it easier to use event attributes for actions defined in the sam…
obrie authored
54 * Make it easier to use event attributes for actions defined in the same class as the state machine
d45428f @obrie Fix #save/save! running transitions in ActiveRecord integrations even…
obrie authored
55 * Fix #save/save! running transitions in ActiveRecord integrations even when a machine's action is not :save
56
9669f10 @obrie Tag 0.7.4 release
obrie authored
57 == 0.7.4 / 2009-05-23
58
b48bfc9 @obrie Fix #save! not firing event attributes properly in ActiveRecord integ…
obrie authored
59 * Fix #save! not firing event attributes properly in ActiveRecord integrations
0d20db4 @obrie Fix log files being included in gems
obrie authored
60 * Fix log files being included in gems
61
00fe711 @obrie Tag 0.7.3 release
obrie authored
62 == 0.7.3 / 2009-04-25
63
03e413c @obrie Require DataMapper version be >= 0.9.4
obrie authored
64 * Require DataMapper version be >= 0.9.4
9471c0c @obrie Explicitly load Sequel's built-in inflector (>= 2.12.0) for scope names
obrie authored
65 * Explicitly load Sequel's built-in inflector (>= 2.12.0) for scope names
9207069 @obrie Don't use qualified name for event attributes [#21 state:resolved]
obrie authored
66 * Don't use qualified name for event attributes
67f78b9 @obrie Fix #valid? being defined for DataMapper resources when dm-validation…
obrie authored
67 * Fix #valid? being defined for DataMapper resources when dm-validations isn't loaded
db21016 @obrie Add auto-validation of values allowed for the state attribute in ORM …
obrie authored
68 * Add auto-validation of values allowed for the state attribute in ORM integrations
69
a6d31c7 @obrie Tag 0.7.2 release
obrie authored
70 == 0.7.2 / 2009-04-08
71
aeb46a6 @obrie Add more flexibility around how callbacks are defined
obrie authored
72 * Add support for running multiple methods in a callback without using blocks
73 * Add more flexibility around how callbacks are defined
d2f7ac6 @obrie Add security documentation around mass-assignment in ORM integrations
obrie authored
74 * Add security documentation around mass-assignment in ORM integrations
4a194fb @obrie Fix event attribute transitions being publicly accessible
obrie authored
75 * Fix event attribute transitions being publicly accessible
76
883805e @obrie Tag 0.7.1 release
obrie authored
77 == 0.7.1 / 2009-04-05
78
b4b65d3 @obrie Fix machines failing to generate graphs when run from Merb tasks
obrie authored
79 * Fix machines failing to generate graphs when run from Merb tasks
80
8ac8707 @obrie Fix 0.7.0 release date
obrie authored
81 == 0.7.0 / 2009-04-04
aa6dfcb @obrie Tag 0.7.0 release
obrie authored
82
2122d32 @obrie Add #{attribute}_event for automatically firing events when the objec…
obrie authored
83 * Add #{attribute}_event for automatically firing events when the object's action is called
a167529 @obrie Make it easier to override state-driven behaviors
obrie authored
84 * Make it easier to override state-driven behaviors
44f9581 @obrie Clarify rollback change in changelog
obrie authored
85 * Rollback state changes when the action fails during transitions
c3dd76b @obrie Use :messages instead of :invalid_message for customizing validation …
obrie authored
86 * Use :messages instead of :invalid_message for customizing validation errors
87 * Use more human-readable validation errors
5ef129f @obrie Add support for more ActiveRecord observer hooks
obrie authored
88 * Add support for more ActiveRecord observer hooks
804b02a @obrie Add support for targeting multiple specific state machines in DataMap…
obrie authored
89 * Add support for targeting multiple specific state machines in DataMapper observer hooks
2c9ebd8 @obrie Don't pass the result of the action as an argument to callbacks (acce…
obrie authored
90 * Don't pass the result of the action as an argument to callbacks (access via Transition#result)
91 * Fix incorrect results being used when running transitions in parallel
a1868de @obrie Fix transition args not being set when run in parallel
obrie authored
92 * Fix transition args not being set when run in parallel
b98d4a3 @obrie Allow callback terminators to be set on an application-wide basis
obrie authored
93 * Allow callback terminators to be set on an application-wide basis
008ae6b @obrie Only catch :halt during before / after transition callbacks
obrie authored
94 * Only catch :halt during before / after transition callbacks
463577d @obrie Fix ActiveRecord predicates being overwritten if they're already defi…
obrie authored
95 * Fix ActiveRecord predicates being overwritten if they're already defined in the class
d12fac3 @obrie Allow machine options to be set on an integration-wide basis
obrie authored
96 * Allow machine options to be set on an integration-wide basis
cd06ecc @obrie Add missing CHANGELOG message: Turn transactions off by default in Da…
obrie authored
97 * Turn transactions off by default in DataMapper integrations
82bbb0b @obrie Add support for configuring the use of transactions
obrie authored
98 * Add support for configuring the use of transactions
891d2ea @obrie Simplify reading/writing of attributes
obrie authored
99 * Simplify reading/writing of attributes
3816088 @obrie Simplify access to state machines via #state_machine(:attribute) with…
obrie authored
100 * Simplify access to state machines via #state_machine(:attribute) without generating dupes
dd659a6 @obrie Fix assumptions that dm-validations is always available in DataMapper…
obrie authored
101 * Fix assumptions that dm-validations is always available in DataMapper integration
93893cf @obrie Automatically define DataMapper properties for machine attributes if …
obrie authored
102 * Automatically define DataMapper properties for machine attributes if they don't exist
6b35593 @obrie Add Transition#qualified_event, #qualified_from_name, and #qualified_…
obrie authored
103 * Add Transition#qualified_event, #qualified_from_name, and #qualified_to_name
17b472c @obrie Add #fire_events / #fire_events! for running events on multiple state…
obrie authored
104 * Add #fire_events / #fire_events! for running events on multiple state machines in parallel
26e1b8f @obrie Rename next_#{event}_transition to #{event}_transition
obrie authored
105 * Rename next_#{event}_transition to #{event}_transition
106 * Add #{attribute}_transitions for getting the list of transitions that can be run on an object
107 * Add #{attribute}_events for getting the list of events that can be fired on an object
70d9c72 @obrie Use generated non-bang event when running bang version so that overri…
obrie authored
108 * Use generated non-bang event when running bang version so that overriding one affects the other
47f72a6 @obrie Provide access to arguments passed into an event from transition call…
obrie authored
109 * Provide access to arguments passed into an event from transition callbacks via Transition#args
110
aa6dfcb @obrie Tag 0.7.0 release
obrie authored
111 == 0.6.3 / 2009-03-10
37b2363 @obrie Tag 0.6.3 release
obrie authored
112
51306ac @obrie Add support for customizing the graph's orientation
obrie authored
113 * Add support for customizing the graph's orientation
b2b841d @obrie Use the standard visualizations for initial (open arrow) and final (d…
obrie authored
114 * Use the standard visualizations for initial (open arrow) and final (double circle) states
f506670 @obrie Highlight final states in GraphViz drawings
obrie authored
115 * Highlight final states in GraphViz drawings
116
da5f0c2 @obrie Tag 0.6.2 release
obrie authored
117 == 0.6.2 / 2009-03-08
118
ea7eb4c @obrie Make it easier to override generated instance / class methods
obrie authored
119 * Make it easier to override generated instance / class methods
120
fb3fa92 @obrie Tag 0.6.1 release
obrie authored
121 == 0.6.1 / 2009-03-07
122
d0c9991 @obrie Add i18n support for ActiveRecord validation errors
obrie authored
123 * Add i18n support for ActiveRecord validation errors
8c843f0 @obrie Add a validation error when failing to transition for ActiveRecord / …
obrie authored
124 * Add a validation error when failing to transition for ActiveRecord / DataMapper / Sequel integrations
125
3022154 @obrie Tag 0.6.0 release
obrie authored
126 == 0.6.0 / 2009-03-03
127
13f0f20 @obrie Allow multiple conditions for callbacks / class behaviors
obrie authored
128 * Allow multiple conditions for callbacks / class behaviors
d9b66f3 @obrie Fix typo in changelog
obrie authored
129 * Add support for state-driven class behavior with :if/:unless options
88f8a0d @obrie Alias Machine#event as Machine#on
obrie authored
130 * Alias Machine#event as Machine#on
cdec7f2 @obrie Add simplified transition/callback requirement syntax (and recommend …
obrie authored
131 * Fix nil from/to states not being handled properly
132 * Simplify hooking callbacks into loopbacks
133 * Add simplified transition/callback requirement syntax
134
5bdc422 @obrie Tag 0.5.2 release
obrie authored
135 == 0.5.2 / 2009-02-17
136
237096f @obrie Simplify state/event matching design, improving guard performance by 30%
obrie authored
137 * Improve pretty-print of events
138 * Simplify state/event matching design, improving guard performance by 30%
5e07007 @obrie Add better error notification when conflicting guard options are defined
obrie authored
139 * Add better error notification when conflicting guard options are defined
cd16cad @obrie Fix scope name pluralization not being applied correctly [#13 state:r…
obrie authored
140 * Fix scope name pluralization not being applied correctly
141
97cf57a @obrie Tag 0.5.1 release
obrie authored
142 == 0.5.1 / 2009-02-11
143
d6fbdcc @obrie Allow states to be drawn as ellipses to accommodate long names
obrie authored
144 * Allow states to be drawn as ellipses to accommodate long names
a75a282 @obrie Fix rake tasks not being registered in Rails/Merb applications [#11 s…
obrie authored
145 * Fix rake tasks not being registered in Rails/Merb applications
1475acf @obrie Never automatically define machine attribute accessors when using an …
obrie authored
146 * Never automatically define machine attribute accessors when using an integration
147
04f28ff @obrie Fix 0.5.0 release date
obrie authored
148 == 0.5.0 / 2009-01-11
ddc8d1a @obrie Tag 0.5.0 release
obrie authored
149
45bc27f @obrie Add missing changelog message for to_name / from_name additions in tr…
obrie authored
150 * Add to_name and from_name to transition objects
7f7fc4a @obrie Add nicely formatted #inspect for transitions
obrie authored
151 * Add nicely formatted #inspect for transitions
762906a @obrie Fix ActiveRecord integrations failing when the database doesn't exist…
obrie authored
152 * Fix ActiveRecord integrations failing when the database doesn't exist yet
b9d0ccc @obrie Add support for customizing the actual stored value for a state
obrie authored
153 * Fix states not being drawn in GraphViz graphs in the correct order
154 * Add nicely formatted #inspect for states and events
155 * Simplify machine context-switching
156 * Store events/states in enumerable node collections
157 * No longer allow subclasses to change the integration
158 * Move fire! action logic into the Event class (no longer calls fire action on the object)
159 * Allow states in subclasses to have different values
160 * Recommend that all states be referenced as symbols instead of strings
161 * All states must now be named (and can be associated with other value types)
162 * Add support for customizing the actual stored value for a state
670ac78 @obrie Add compatibility with Ruby 1.9+
obrie authored
163 * Add compatibility with Ruby 1.9+
164
ba6dfeb @obrie Tag 0.4.3 release
obrie authored
165 == 0.4.3 / 2008-12-28
166
bae9e16 @obrie Allow dm-observer integration to be optional
obrie authored
167 * Allow dm-observer integration to be optional
82a5135 @obrie Fix non-lambda callbacks not working for DataMapper/Sequel
obrie authored
168 * Fix non-lambda callbacks not working for DataMapper/Sequel
169
faef342 @obrie Tag 0.4.2 release
obrie authored
170 == 0.4.2 / 2008-12-28
171
a8bf1c9 @obrie Fix graphs not being drawn the same way consistently
obrie authored
172 * Fix graphs not being drawn the same way consistently
b8de3a7 @obrie Add support for sharing transitions across multiple events
obrie authored
173 * Add support for sharing transitions across multiple events
db88b6f @obrie Add support for state-driven behavior
obrie authored
174 * Add support for state-driven behavior
d71fedb @obrie Simplify initialize hooks, requiring super to be called instead
obrie authored
175 * Simplify initialize hooks, requiring super to be called instead
cfa7757 @obrie Add :namespace option for generated state predicates / event methods
obrie authored
176 * Add :namespace option for generated state predicates / event methods
177
2035234 @obrie Tag 0.4.1 release
obrie authored
178 == 0.4.1 / 2008-12-16
179
977c977 @obrie Fix nil states not being handled properly in guards, known states, or…
obrie authored
180 * Fix nil states not being handled properly in guards, known states, or visualizations
181 * Fix the same node being used for different dynamic states in GraphViz output
182 * Always include initial state in the list of known states even if it's dynamic
183 * Use consistent naming scheme for dynamic states in GraphViz output
184 * Allow blocks to be directly passed into machine class
198570e @obrie Fix attribute predicates not working on attributes that represent col…
obrie authored
185 * Fix attribute predicates not working on attributes that represent columns in ActiveRecord
186
5d5b3d2 @obrie Tag 0.4.0 release
obrie authored
187 == 0.4.0 / 2008-12-14
188
146afff @obrie Remove the PluginAWeek namespace
obrie authored
189 * Remove the PluginAWeek namespace
48d83df @obrie Add generic attribute predicate (e.g. "#{attribute}?(state_name)") an…
obrie authored
190 * Add generic attribute predicate (e.g. "#{attribute}?(state_name)") and state predicates (e.g. "#{state}?")
b68d4bd @obrie Add Sequel support
obrie authored
191 * Add Sequel support
06e8e84 @obrie Fix aliasing :initialize on ActiveRecord models causing warnings when…
obrie authored
192 * Fix aliasing :initialize on ActiveRecord models causing warnings when the environment is reloaded
c3d532f @obrie Fix ActiveRecord state machines trying to query the database on unmig…
obrie authored
193 * Fix ActiveRecord state machines trying to query the database on unmigrated models
bee135e @obrie Fix initial states not getting set when the current value is an empty…
obrie authored
194 * Fix initial states not getting set when the current value is an empty string [Aaron Gibralter]
6f25124 @jashmenn Add rake tasks for generating graphviz files for state machines
jashmenn authored
195 * Add rake tasks for generating graphviz files for state machines [Nate Murray]
ef3eb0c @obrie Fix initial state not being included in list of known states
obrie authored
196 * Fix initial state not being included in list of known states
2269c93 Add other_states directive for defining additional states not referen…
Pete Forde authored
197 * Add other_states directive for defining additional states not referenced in transitions or callbacks [Pete Forde]
bbd3a98 @obrie Add next_#{event}_transition for getting the next transition that wou…
obrie authored
198 * Add next_#{event}_transition for getting the next transition that would be performed if the event were invoked
fab942f @obrie Add missing CHANGELOG comments
obrie authored
199 * Add the ability to override the pluralized name of an attribute for creating scopes
200 * Add the ability to halt callback chains by: throw :halt
8f17ce0 @obrie Clarify CHANGELOG comments
obrie authored
201 * Add support for dynamic to states in transitions (e.g. :to => lambda {Time.now})
307ac8e @obrie Re-design to be library-agnostic (define state machines on any Ruby c…
obrie authored
202 * Add support for using real blocks in before_transition/after_transition calls instead of using the :do option
203 * Add DataMapper support
204 * Include states referenced in transition callbacks in the list of a machine's known states
205 * Only generate the known states for a machine on demand, rather than calculating beforehand
8f17ce0 @obrie Clarify CHANGELOG comments
obrie authored
206 * Add the ability to skip state change actions during a transition (e.g. vehicle.ignite(false))
307ac8e @obrie Re-design to be library-agnostic (define state machines on any Ruby c…
obrie authored
207 * Add the ability for the state change action (e.g. +save+ for ActiveRecord) to be configurable
208 * Allow state machines to be defined on *any* Ruby class, not just ActiveRecord (removes all external dependencies)
209 * Refactor transitions, guards, and callbacks for better organization/design
8f17ce0 @obrie Clarify CHANGELOG comments
obrie authored
210 * Use a class containing the transition context in callbacks, rather than an ordered list of each individual attribute
f379ba9 @obrie Add missing owner from changelog message
obrie authored
211 * Add without_#{attribute} named scopes (opposite of the existing with_#{attribute} named scopes) [Sean O'Brien]
c7d4cfa @obrie Add changelog message for without_#{attribute} named scopes
obrie authored
212
6d21379 @obrie Tag 0.3.1 release
obrie authored
213 == 0.3.1 / 2008-10-26
214
a6eb537 @obrie Fix the initial state not getting set when the state attribute is mas…
obrie authored
215 * Fix the initial state not getting set when the state attribute is mass-assigned but protected
a3cbd33 @obrie Change how the base module is included to prevent namespacing conflicts
obrie authored
216 * Change how the base module is included to prevent namespacing conflicts
217
ba3975e @obrie Tag 0.3.0 release
obrie authored
218 == 0.3.0 / 2008-09-07
219
6a94afc @obrie MAJOR REWRITE! Replace all before/after_exit/enter/loopback callback …
obrie authored
220 * No longer allow additional arguments to be passed into event actions
221 * Add support for can_#{event}? for checking whether an event can be fired based on the current state of the record
222 * Don't use callbacks for performing transitions
223 * Fix state machines in subclasses not knowing what states/events/transitions were defined by superclasses
224 * Replace all before/after_exit/enter/loopback callback hooks and :before/:after options for events with before_transition/after_transition callbacks, e.g.
225
226 before_transition :from => 'parked', :do => :lock_doors # was before_exit :parked, :lock_doors
227 after_transition :on => 'ignite', :do => :turn_on_radio # was event :ignite, :after => :turn_on_radio do
228
e542664 @obrie Always save when an event is fired even if it results in a loopback
obrie authored
229 * Always save when an event is fired even if it results in a loopback [Jürgen Strobel]
af5d9ad @obrie Ensure initial state callbacks are invoked in the proper order when a…
obrie authored
230 * Ensure initial state callbacks are invoked in the proper order when an event is fired on a new record
e542664 @obrie Always save when an event is fired even if it results in a loopback
obrie authored
231 * Add before_loopback and after_loopback hooks [Jürgen Strobel]
4dabe2c @obrie Add before_loopback and after_loopback hooks
obrie authored
232
179ce54 @obrie Add more descriptive exceptions
obrie authored
233 == 0.2.1 / 2008-07-05
234
235 * Add more descriptive exceptions
236 * Assume the default state attribute is "state" if one is not provided
7f1b4d6 @obrie Add :except_from option for transitions if you want to blacklist states
obrie authored
237 * Add :except_from option for transitions if you want to blacklist states
26d60af @obrie Add PluginAWeek::StateMachine::Machine#states
obrie authored
238 * Add PluginAWeek::StateMachine::Machine#states
239 * Add PluginAWeek::StateMachine::Event#transitions
b90d731 @obrie Allow creating transitions with no from state (effectively allowing t…
obrie authored
240 * Allow creating transitions with no from state (effectively allowing the transition for *any* from state)
241 * Reduce the number of objects created for each transition
242
b3b009b @obrie Add a non-bang version of events (e.g. park) that will return a boole…
obrie authored
243 == 0.2.0 / 2008-06-29
244
245 * Add a non-bang version of events (e.g. park) that will return a boolean value for success
246 * Raise an exception if the bang version of events are used (e.g. park!) and no transition is successful
247 * Change callbacks to act a little more like ActiveRecord
248 * Avoid using string evaluation for dynamic methods
249
7bca32d @obrie Convert to a more sane CHANGELOG format using rdoc
obrie authored
250 == 0.1.1 / 2008-06-22
6cf38df @obrie Tag 0.1.1 release
obrie authored
251
252 * Remove log files from gems
253
7bca32d @obrie Convert to a more sane CHANGELOG format using rdoc
obrie authored
254 == 0.1.0 / 2008-05-05
f356504 @obrie Completely rewritten from scratch
obrie authored
255
256 * Completely rewritten from scratch
257 * Renamed to state_machine
258 * Removed database dependencies
259 * Removed models in favor of an attribute-agnostic design
260 * Use ActiveSupport::Callbacks instead of eval_call
261 * Remove dry_transaction_rollbacks dependencies
262 * Added functional tests
263 * Updated documentation
264
7bca32d @obrie Convert to a more sane CHANGELOG format using rdoc
obrie authored
265 == 0.0.1 / 2007-09-26
26b00de @obrie Add dependency on custom_callbacks
obrie authored
266
5ad4f6c @obrie Prepare release dates/versions
obrie authored
267 * Add dependency on custom_callbacks
b506667 @obrie Move test fixtures out of the test application root directory
obrie authored
268 * Move test fixtures out of the test application root directory
269 * Improve documentation
270 * Remove the StateExtension module in favor of adding singleton methods to the stateful class
307fe93 @obrie Convert dos newlines to unix newlines
obrie authored
271 * Convert dos newlines to unix newlines
cbd2a5a @obrie Fix error message when a given event can't be found in the database.
obrie authored
272 * Fix error message when a given event can't be found in the database
c140b97 @obrie Add before_#{action} and #{action} callbacks when an event is performed.
obrie authored
273 * Add before_#{action} and #{action} callbacks when an event is performed
274 * All state and event callbacks can now explicitly return false in order to cancel the action
275 * Refactor ActiveState callback creation
276 * Refactor unit tests so that they use mock classes instead of themselves
12a93d4 @obrie Allow force_reload option to be set in the state association.
obrie authored
277 * Allow force_reload option to be set in the state association
278 * Don't save the entire model when updating the state_id
90c6786 @obrie Raise exception if a class tries to define a state more than once.
obrie authored
279 * Raise exception if a class tries to define a state more than once
280 * Add tests for PluginAWeek::Has::States::ActiveState
281 * Refactor active state/active event creation
282 * Fix owner_type not being set correctly in active states/events of subclasses
982f2f8 @obrie Allow subclasses to override the initial state.
obrie authored
283 * Allow subclasses to override the initial state
ea86551 @obrie Fix problem with migrations using default null when column cannot be …
obrie authored
284 * Fix problem with migrations using default null when column cannot be null
172f646 @obrie Moved deadline support into a separate plugin (has_state_deadlines).
obrie authored
285 * Moved deadline support into a separate plugin (has_state_deadlines).
286 * Added many more unit tests.
287 * Simplified many of the interfaces for maintainability.
288 * Added support for turning off recording state changes.
289 * Removed the short_description and long_description columns, in favor of an optional human_name column.
290 * Fixed not overriding the correct equality methods in the StateTransition class.
291 * Added to_sym to State and Event.
292 * State#name and Event#name now return the string version of the name instead of the symbol version.
293 * Added State#human_name and Event#human_name to automatically figure out what the human name is if it isn't specified in the table.
294 * Updated manual rollbacks to use the new Rails edge api (ActiveRecord::Rollback exception).
295 * Moved StateExtension class into a separate file in order to help keep the has_state files clean.
296 * Renamed InvalidState and InvalidEvent exceptions to StateNotFound and EventNotFound in order to follow the ActiveRecord convention (i.e. RecordNotFound).
297 * Added StateNotActive and EventNotActive exceptions to help differentiate between states which don't exist and states which weren't defined in the class.
298 * Added support for defining callbacks like so:
7bca32d @obrie Convert to a more sane CHANGELOG format using rdoc
obrie authored
299
172f646 @obrie Moved deadline support into a separate plugin (has_state_deadlines).
obrie authored
300 def before_exit_parked
301 end
302
303 def after_enter_idling
304 end
305
306 * Added support for defining callbacks using class methods:
7bca32d @obrie Convert to a more sane CHANGELOG format using rdoc
obrie authored
307
172f646 @obrie Moved deadline support into a separate plugin (has_state_deadlines).
obrie authored
308 before_exit_parked :fasten_seatbelt
309
310 * Added event callbacks after the transition has occurred (e.g. after_park)
311 * State callbacks no longer receive any of the arguments that were provided in the event action
307fe93 @obrie Convert dos newlines to unix newlines
obrie authored
312 * Updated license to include our names.
Something went wrong with that request. Please try again.