• Update TOX_CONSTRAINTS_FILE for stable/2023.1

  • Update .gitreview for stable/2023.1


  • Add Python3 antelope unit tests

  • Update master for stable/zed


  • Fix formatting of release list


  • Drop python3.6/3.7 support in testing runtime

  • Remove unnecessary unicode prefixes

  • Add Python3 zed unit tests

  • Update master for stable/yoga


  • doc: Avoid duplicate entry warning

  • Add Python3 yoga unit tests

  • Update master for stable/xena


  • Moving to OFTC

  • setup.cfg: Replace dashes with underscores

  • Move flake8 as a pre-commit local target

  • Add Python3 xena unit tests

  • Update master for stable/wallaby

  • tox: Remove references to testr

  • Remove lower-constraints remnants


  • Uncap PrettyTable

  • Dropping lower constraints testing

  • Remove six dependency


  • Use py3 as the default runtime for tox

  • Adding pre-commit

  • Add Python3 wallaby unit tests

  • Update master for stable/victoria


  • Update lower-constraints list

  • drop mock from lower-constraints


  • Stop to use the __future__ module

  • Small cleanup

  • Switch to newer openstackdocstheme and reno versions

  • Bump default tox env from py37 to py38

  • Add py38 package metadata

  • Add Python3 victoria unit tests

  • Update master for stable/ussuri


  • Update hacking for Python3


  • Add python3 classifiers

  • Ignore releasenote artifacts files

  • [ussuri][goal] Drop python 2.7 support and testing

  • trivial: Remove noise

  • Move doc requirements into dedicated file

  • Switch to Ussuri jobs

  • Blacklist sphinx 2.1.0 (autodoc bug)

  • Update the constraints url

  • Update master for stable/train


  • Add Python 3 Train unit tests

  • Add local bindep.txt

  • Sync Sphinx requirement

  • Update to opendev

  • OpenDev Migration Patch

  • Update master for stable/stein

  • add python 3.7 unit test job


  • Use template for lower-constraints

  • Change openstack-dev to openstack-discuss

  • Change openstack-dev to openstack-discuss

  • add lib-forward-testing-python3 test job

  • add python 3.6 unit test job

  • import zuul job settings from project-config

  • Update reno for stable/rocky


  • Switch to stestr

  • fix tox python3 overrides

  • Trivial: Update pypi url to new url

  • fix list of default virtualenvs

  • set default python to python3

  • add lower-constraints job

  • Updated from global requirements

  • Update reno for stable/queens

  • Updated from global requirements

  • Updated from global requirements

  • Updated from global requirements



  • Avoid for constraints support

  • Remove setting of version/release from releasenotes

  • Updated from global requirements


  • Updated from global requirements

  • Remove kwarg default_start_state in the machine constructor

  • Updated from global requirements

  • Update reno for stable/pike

  • Updated from global requirements


  • Update URLs in documents according to document migration

  • update link to docs in readme


  • switch from oslosphinx to openstackdocstheme

  • rearrange existing documentation according to the new standard layout

  • Updated from global requirements


  • Remove pbr warnerrors in favor of sphinx check

  • Remove support for py34

  • Updated from global requirements

  • Updated from global requirements


  • Updated from global requirements

  • Remove unused dependecy testscenarios


  • Updated from global requirements

  • Updated from global requirements

  • Update reno for stable/ocata


  • Don’t include openstack/common in flake8 exclude list

  • Removes unnecessary utf-8 encoding

  • Add Constraints support

  • Replace six.iteritems() with .items()


  • Updated from global requirements

  • Fix release notes gate failure

  • Updated from global requirements

  • Add reno for release notes management


  • Changed the home-page link

  • Updated from global requirements

  • Updated from global requirements


  • Remove discover from test-requirements

  • Add Python 3.5 classifier and venv


  • Updated from global requirements


  • Add a state-space machine building example

  • Ensure state space can also pass on_enter/exit callbacks

  • Updated from global requirements

  • Updated from global requirements

  • Ensure machine special method(s) include in generated docs

  • Put py34 first in the envlist order of tox ,remove py33


  • Removes as it is not needed explicitely by PBR

  • Deprecated tox -downloadcache option removed


  • Updated from global requirements

  • Remove python 2.6 and cleanup tox.ini


  • Added code coverage section to tox

  • No need for Oslo Incubator Sync

  • Ignore generated files

  • docs - Set pbr ‘warnerrors’ option for doc build

  • Remove dummy/placeholder ‘ChangeLog’ as its not needed

  • Enhance the README

  • Fix the build path in .gitignore file

  • Updated from global requirements

  • Provide a finite machine build() method

  • Allow for raising on duplicate transition registration


  • Updated from global requirements

  • Updated from global requirements

  • Updated from global requirements


  • Activate pep8 check that _ is imported

  • Updated from global requirements


  • Ensure doctesting and doc8 testing done in py27 env

  • Updated from global requirements

  • Remove setup.cfg ‘requires-python’ incorrect entry

  • Document `process_event` return and expose return namedtuple type

  • Allow providing and using a ‘nested_start_state_fetcher’

  • Allow providing a state-name translation dict


  • Add a bigger CD-player state-machine doctest(ed) example

  • Add `is_actionable_event` checking function

  • Disallow adding transitions from terminal states

  • Add and use a callback name fetching utility function

  • Add runners to features.rst & add a runner base & update docstrings


  • Add badge support to README.rst

  • Add code repo, mail list, and IRC to CONTRIBUTING

  • Remove 3.3 classifier

  • Remove 2.6 classifier + 2.6 compatibility code

  • Add history.rst that uses generated ‘ChangeLog’ file

  • Add base exception class for this library

  • Updated from global requirements

  • Add optional machine conversion into a pydot graph

  • Updated from global requirements

  • Updated from global requirements

  • When a state has no transitions show its own `on_exit` and `on_enter`

  • Add a more complex doctest(ed) example

  • Add simple machine doctest(ed) example into docs


  • Split the state machine runners off into own file

  • Use debtcollector removals function instead of warnings.warn

  • Revamp repo to match openstack repos

  • Allow the hierarchical machine to provide back the nested machines

  • Retain & deprecate default_start_state via constructor

  • Amend the unittest due to more on_exit being triggered

  • Have the start state ‘on_exit’ be called when exit occurs

  • Use a property setter instead of a method

  • Require using set_default_start_state to set the default

  • Add more checks on setting a alternative start state default

  • Rename start_state to default_start_state

  • Use type(self) instead of self.__class__

  • Correctly copy derived classes

  • Allow initialize to take an alternative start_state

  • Update message when processing event and not initialized

  • Add pre and post event processing methods

  • Share the same not found template between machines

  • Avoid having a _generate_runner method when inheritance is ok

  • Allow frozen to be set/unset

  • Add testrepository to testing requirements

  • Fixup the classifiers

  • Fix the tox to install the right requirements

  • Just use _generate_runner to generate the different runner types

  • Use quoting in the machine code documentation

  • Adjust pformat() + add examples

  • Remove version caps

  • Split the requirements file into py2/py3 variations

  • Move process event to be a static method

  • Add a HierarchicalFiniteMachine + Runner

  • Use a helper classmethod to create machines

  • Rename _Runner -> _FiniteRunner

  • Move to top level machines module, seems cleaner this way

  • Fix the pformat() example

  • Move the fsm -> machines/ and split off the running methods

  • Allow copies to be unfrozen (if the parent is frozen)

  • Make frozen a non-settable attribute and copy it correctly

  • Allow machines to be shallow or deep copied

  • Three is the number for alpha

  • Change beta to alpha (for now)


  • Add the travis badge

  • Add a travis testing file

  • Also install the main requirements.txt when using tox

  • Move over the fsm test

  • Add testtools testing requirement

  • Use the test-requirements.txt for tox.ini deps

  • Add needed testing requirement and tox.ini file

  • Don’t forget the requirements.txt file

  • Fixup the README.rst and setup.cfg

  • Use prettytable

  • Move a bunch of files into there rightful places

  • Initial commit