- Add compatibility tests with Django 3.0
- Remove the dependency with django-guardians in the tests
- change some django deprecated functions
- Add compatibility test with python 3.8
- Add compatibility test with Django 2.2 - Refactor the models in tests, a migration
- Delivery on Pypi
- Fix the travis tests
- Add compatibility test with python 3.7, remove 2.6 and 3.3
- Add compatibility test with Django 2.0 and 2.1, remove 1.6, 1.8, 1.9 and 1.10
- Fix django 1.11 compatibility
- Fix TypeError in graph_transitions command when using django's lazy translations
- graph_transition command fix for django 1.10
- graph_transition command supports GET_STATE targets
- signal data extended with method args/kwargs and field
- sets allowed to be passed to the transition decorator
- graph_transition commnad now works with multiple FSM's per model
- Add ability to set target state from transition return value or callable
- Add source state shortcut '+' to specify transitions from all states except the target
- Add object-level permission checks
- Fix translated labels for graph of FSMIntegerField
- Fix multiple signals for several transition decorators
- Improved exception message for unmet transition conditions.
- Don't send post transition signal in case of no state changes on exception
- Allow empty string as correct state value
- Improved graphviz fsm visualisation
- Clean django 1.8 warnings
- Support for class substitution to proxy classes depending on the state
- Added ConcurrentTransitionMixin with optimistic locking support
- Default db_index=True for FSMIntegerField removed
- Graph transition code migrated to new graphviz library with python 3 support
- Ability to change state on transition exception
- Support for attaching permission checks on model transitions
- Backward incompatible release
- All public code import moved directly to django_fsm package
- Correct support for several @transitions decorator with different source states and conditions on same method
- save parameter from transition decorator removed
- get_available_FIELD_transitions return Transition data object instead of tuple
- Models got get_available_FIELD_transitions, even if field specified as string reference
- New get_all_FIELD_transitions method contributed to class
- FSMIntegerField and FSMKeyField support
- Ad-hoc support for state fields from proxy and inherited models
- Python 3 compatibility
- Add graph_transition command for drawing state transition picture
- Add direct field modification protection
- Add pre_transition and post_transition signals
- Add support for transition conditions
- Allow multiple FSMField in one model
- Contribute get_available_FIELD_transitions for model class
- Initial public release