[openstack-dev] [release][oslo] automaton release 0.2.0 (liberty)

Doug Hellmann doug at doughellmann.com
Thu Jun 11 17:57:59 UTC 2015


We are excited to announce the release of:

automaton 0.2.0: Friendly state machines for python.

This release is part of the liberty release series.

With source available at:

    http://git.openstack.org/cgit/openstack/automaton

For more details, please see the git log history below and:

    http://launchpad.net/automaton/+milestone/0.2.0

Please report issues through launchpad:

    http://bugs.launchpad.net/automaton

Changes in automaton 0.1..0.2.0
-------------------------------

bcb61f0 Split the state machine runners off into own file
33c7e82 Use debtcollector removals function instead of warnings.warn
d71b6cf Revamp repo to match openstack repos
468a992 Allow the hierarchical machine to provide back the nested machines
230ade3 Retain & deprecate default_start_state via constructor
931de8b Amend the unittest due to more on_exit being triggered
dd34f04 Have the start state 'on_exit' be called when exit occurs
01a92f9 Use a property setter instead of a method
b0abceb Require using set_default_start_state to set the default
93f1f4e Add more checks on setting a alternative start state default
daacc95 Rename start_state to default_start_state
ba0214a Use type(self) instead of self.__class__
00b59ec Correctly copy derived classes
6f1be9d Allow initialize to take an alternative start_state
eb169da Update message when processing event and not initialized
8c897cf Add pre and post event processing methods
4de3914 Share the same not found template between machines
3f748c2 Avoid having a _generate_runner method when inheritance is ok
a81d49a Allow frozen to be set/unset
01f2201 Add testrepository to testing requirements
46f3c4b Fixup the classifiers
6f51cb8 Fix the tox to install the right requirements
7acc45a Just use _generate_runner to generate the different runner types
ceaf7a1 Use quoting in the machine code documentation
1c5ae77 Adjust pformat() + add examples
b87aefc Remove version caps
a84405e Split the requirements file into py2/py3 variations
cf14590 Move process event to be a static method
114e68f Add a HierarchicalFiniteMachine + Runner
b08d6ab Use a helper classmethod to create machines
878a6ef Rename _Runner -> _FiniteRunner
4b9bb19 Move to top level machines module, seems cleaner this way
0c122a9 Fix the pformat() example
fe402eb Move the fsm -> machines/finite.py and split off the running methods
61fdedc Allow copies to be unfrozen (if the parent is frozen)
22edd49 Make frozen a non-settable attribute and copy it correctly
a4197ee Allow machines to be shallow or deep copied
f0c4fb2 Three is the number for alpha
3c964ef Change beta to alpha (for now)

Diffstat (except docs and test files)
-------------------------------------

.gitreview                  |   4 +
.testr.conf                 |   8 +
.travis.yml                 |  14 --
CONTRIBUTING.rst            |  17 ++
HACKING.rst                 |   5 +
MANIFEST.in                 |   6 +
README.rst                  |   9 +-
automaton/fsm.py            | 336 -------------------------------------
automaton/machines.py       | 394 ++++++++++++++++++++++++++++++++++++++++++++
automaton/runners.py        | 169 +++++++++++++++++++
babel.cfg                   |   2 +
openstack-common.conf       |   6 +
requirements.txt            |  13 +-
setup.cfg                   |  32 ++--
setup.py                    |   2 +-
test-requirements.txt       |  16 +-
tox.ini                     |  20 ++-
25 files changed, 1171 insertions(+), 590 deletions(-)


Requirements updates
--------------------

diff --git a/requirements.txt b/requirements.txt
index ba45ab7..87a6d7c 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,2 +1,6 @@
-# Build sanity
-pbr>=0.6,!=0.7,<1.0
+# The order of packages is significant, because pip processes them in the order
+# of appearance. Changing the order has an impact on the overall integration
+# process, which may cause wedges in the gate later.
+
+# See: https://bugs.launchpad.net/pbr/+bug/1384919 for why this is here...
+pbr>=0.11,<2.0
@@ -5 +9,4 @@ pbr>=0.6,!=0.7,<1.0
-six>=1.7.0
+six>=1.9.0
+
+# For deprecation of things
+debtcollector>=0.3.0  # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 6107f0d..031650a 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -1,2 +1,14 @@
-hacking>=0.9.2,<0.10
-nose
+# The order of packages is significant, because pip processes them in the order
+# of appearance. Changing the order has an impact on the overall integration
+# process, which may cause wedges in the gate later.
+
+hacking<0.11,>=0.10.0
+
+coverage>=3.6
+discover
+python-subunit>=0.0.18
+sphinx>=1.1.2,!=1.2.0,!=1.3b1,<1.3
+oslosphinx>=2.5.0  # Apache-2.0
+oslotest>=1.5.1  # Apache-2.0
+testrepository>=0.0.18
+testscenarios>=0.4





More information about the OpenStack-dev mailing list