transitions v0.5.0 Release Notes
-
๐ Release 0.5.0 is a major release:
- ๐ CHANGED API:
MachineError
is now limited to internal error and has been replaced byAttributeError
andValueError
where applicable (thanks to @ankostis) - ๐ CHANGED API: Phasing out
add_self
;model=None
will add NO model starting from next major release; usemodel='self'
instead. - ๐ Introduced deprecation warnings for upcoming changes concerning
Machine
keywordsmodel
andadd_self
- ๐ Introduced
Machine.remove_transition
(thanks to @PaleNeutron) - Introduced
Machine._create_state
for easier subclassing of states - ๐
LockedMachine
now supports custom context managers for each model (thanks to @paulbovbel) Machine.before/after_state_change
can now be altered dynamically (thanks to @peendebak)Machine.add_ordered_transitions
now supportsprepare
,conditons
,unless
,before
andafter
(thanks to @aforren1)- New
prepare_event
andfinalize_event
keywords to handle transitions globally (thanks to @ankostis) - New
show_auto_transitions
keyword forGraphMachine.__init__
(defaultFalse
); if enabled, show auto transitions in graph - New
show_roi
keyword forGraphMachine._get_graph
(defaultFalse
); ifTrue
, show only reachable states in retrieved graph - โ Test suite now skips contextual tests (e.g. pygraphviz) if dependencies cannot be found (thanks to @ankostis)
- ๐ Improved string representation of several classes (thanks to @ankostis)
- ๐ Improved
LockedMachine
performance by removing recursive locking - ๐ Improved graph layout for nested graphs
- ๐ง
transitions.extensions.nesting.AGraph
has been split up intoGraph
andNestedGraph
for easier maintenance - ๐ Fixed bug related to pickling
RLock
in nesting - ๐ Fixed order of callback execution (thanks to @ankostis)
- ๐ Fixed representation of condition names in graphs (thanks to @cemoody)
- ๐ CHANGED API: