- Nothing changed yet.
New:
- Add support for Python 3.7, 3.8, 3.9
Bugfix:
- Fix
setup.py
execution on Python3 or non-UTF locale.
Bugfix:
- Allow setting the current state of a :class:`~xworkflows.base.WorkflowEnabled` instance from a state's name
- Ensure :attr:`~xworkflows.base.Workflow.states` behaves as a proper mapping
Bugfix:
- Fix installation from PyPI
Misc:
- Switch back to setuptools >= 0.8 for packaging.
Bugfix:
- Fix hook registration on custom implementations while inheriting :class:`~xworkflows.WorkflowEnabled`.
New:
- Add support for Python 2.6 to 3.2
Backward incompatible:
- The string representation of :class:`~xworkflows.base.State` and :class:`~xworkflows.base.StateWrapper` now reflects the state's name, as does their :meth:`unicode` representation in Python 2.X.
Bugfix:
- Support passing a :class:`~xworkflows.base.Transition` or a :class:`~xworkflows.base.State` to hooks, instead of its name.
New:
- Improve support for transition hooks, with the :meth:`xworkflows.before_transition`, :meth:`xworkflows.after_transition`, :meth:`xworkflows.transition_check`, :meth:`xworkflows.on_enter_state` and :meth:`xworkflows.on_leave_state` decorators.
Bugfix:
- Fix support for inheritance of :class:`xworkflows.WorkflowEnabled` objects.
Deprecated:
- Use of the
check=
,before=
,after=
keyword arguments in the@transition
decorator is now deprecated; use@before_transition
,@after_transition
and@transition_check
instead. Support for old keyword arguments will be removed in 0.5.0.
Backward incompatible:
- The (private) :class:`~xworkflows.base.ImplementationWrapper` class no longer accepts the
check
,before
,after
arguments (usehooks
instead)
Bugfix:
- Fix transition logging for objects whose __repr__ doesn't convert to unicode.
Bugfix:
- Make the :attr:`~xworkflows.base.State.title` argument mandatory in :class:`~xworkflows.base.State` initialization
New:
- Allow and document customization of the :class:`~xworkflows.base.ImplementationWrapper`
- Add a method to check whether a transition is available from the current instance
- Cleanup :class:`~xworkflows.base.ImplementationList` and improve its documentation
New:
- Improve documentation
- Add pre-transition
check
hook- Remove alternate :class:`~xworkflows.Workflow` definition schemes.
- Properly validate objects using two workflows with conflicting transitions.
New:
- Simplify API
- Add support for pe/post transition and logging hooks
New:
- Add support for workflow subclassing
- Improve packaging
New:
- First Public Release.