diff -Nru python-automaton-2.1.0/AUTHORS python-automaton-2.3.0/AUTHORS --- python-automaton-2.1.0/AUTHORS 2020-06-04 10:42:48.000000000 +0000 +++ python-automaton-2.3.0/AUTHORS 2021-02-19 11:28:12.000000000 +0000 @@ -13,6 +13,7 @@ Le Hou Ondřej Nový OpenStack Release Bot +Riccardo Pittau Ronald Bradford Ruby Loo Sean McGinnis diff -Nru python-automaton-2.1.0/automaton/machines.py python-automaton-2.3.0/automaton/machines.py --- python-automaton-2.1.0/automaton/machines.py 2020-06-04 10:41:20.000000000 +0000 +++ python-automaton-2.3.0/automaton/machines.py 2021-02-19 11:27:28.000000000 +0000 @@ -15,7 +15,6 @@ import collections import prettytable -import six from automaton import _utils as utils from automaton import exceptions as excp @@ -54,9 +53,9 @@ def _orderedkeys(data, sort=True): if sort: - return sorted(six.iterkeys(data)) + return sorted(data) else: - return list(six.iterkeys(data)) + return list(data) class _Jump(object): @@ -178,10 +177,10 @@ if state in self._states: raise excp.Duplicate("State '%s' already defined" % state) if on_enter is not None: - if not six.callable(on_enter): + if not callable(on_enter): raise ValueError("On enter callback must be callable") if on_exit is not None: - if not six.callable(on_exit): + if not callable(on_exit): raise ValueError("On exit callback must be callable") self._states[state] = { 'terminal': bool(terminal), @@ -225,7 +224,7 @@ if state not in self._states: raise excp.NotFound("Can not add a reaction to event '%s' for an" " undefined state '%s'" % (event, state)) - if not six.callable(reaction): + if not callable(reaction): raise ValueError("Reaction callback must be callable") if event not in self._states[state]['reactions']: self._states[state]['reactions'][event] = (reaction, args, kwargs) @@ -380,19 +379,19 @@ @property def states(self): """Returns the state names.""" - return list(six.iterkeys(self._states)) + return list(self._states) @property def events(self): """Returns how many events exist.""" c = 0 - for state in six.iterkeys(self._states): + for state in self._states: c += len(self._transitions[state]) return c def __iter__(self): """Iterates over (start, event, end) transition tuples.""" - for state in six.iterkeys(self._states): + for state in self._states: for event, target in self._transitions[state].items(): yield (state, event, target.name) @@ -515,7 +514,7 @@ """ super(HierarchicalFiniteMachine, self).initialize( start_state=start_state) - for data in six.itervalues(self._states): + for data in self._states.values(): if 'machine' in data: nested_machine = data['machine'] nested_start_state = None diff -Nru python-automaton-2.1.0/automaton/runners.py python-automaton-2.3.0/automaton/runners.py --- python-automaton-2.1.0/automaton/runners.py 2020-06-04 10:41:20.000000000 +0000 +++ python-automaton-2.3.0/automaton/runners.py 2021-02-19 11:27:28.000000000 +0000 @@ -14,8 +14,6 @@ import abc -import six - from automaton import exceptions as excp from automaton import machines @@ -26,8 +24,7 @@ " in response to event '%s')") -@six.add_metaclass(abc.ABCMeta) -class Runner(object): +class Runner(metaclass=abc.ABCMeta): """Machine runner used to run a state machine. Only **one** runner per machine should be active at the same time (aka diff -Nru python-automaton-2.1.0/automaton/tests/test_fsm.py python-automaton-2.3.0/automaton/tests/test_fsm.py --- python-automaton-2.1.0/automaton/tests/test_fsm.py 2020-06-04 10:41:20.000000000 +0000 +++ python-automaton-2.3.0/automaton/tests/test_fsm.py 2021-02-19 11:27:28.000000000 +0000 @@ -20,7 +20,6 @@ from automaton import machines from automaton import runners -import six from testtools import testcase @@ -262,13 +261,13 @@ self.assertFalse(self.jumper.terminated) self.assertEqual([('down', 'up'), ('up', 'down'), ('down', 'up')], up_downs) - self.assertRaises(StopIteration, six.next, it) + self.assertRaises(StopIteration, next, it) def test_run_send_fail(self): up_downs = [] runner = runners.FiniteRunner(self.jumper) it = runner.run_iter('jump') - up_downs.append(six.next(it)) + up_downs.append(next(it)) self.assertRaises(excp.NotFound, it.send, 'fail') it.close() self.assertEqual([('down', 'up')], up_downs) @@ -364,7 +363,7 @@ def phone_reaction(old_state, new_state, event, chat_iter): try: - six.next(chat_iter) + next(chat_iter) except StopIteration: return 'finish' else: diff -Nru python-automaton-2.1.0/automaton.egg-info/pbr.json python-automaton-2.3.0/automaton.egg-info/pbr.json --- python-automaton-2.1.0/automaton.egg-info/pbr.json 2020-06-04 10:42:48.000000000 +0000 +++ python-automaton-2.3.0/automaton.egg-info/pbr.json 2021-02-19 11:28:12.000000000 +0000 @@ -1 +1 @@ -{"git_version": "db875ea", "is_release": true} \ No newline at end of file +{"git_version": "406007e", "is_release": true} \ No newline at end of file diff -Nru python-automaton-2.1.0/automaton.egg-info/PKG-INFO python-automaton-2.3.0/automaton.egg-info/PKG-INFO --- python-automaton-2.1.0/automaton.egg-info/PKG-INFO 2020-06-04 10:42:48.000000000 +0000 +++ python-automaton-2.3.0/automaton.egg-info/PKG-INFO 2021-02-19 11:28:12.000000000 +0000 @@ -1,6 +1,6 @@ Metadata-Version: 1.2 Name: automaton -Version: 2.1.0 +Version: 2.3.0 Summary: Friendly state machines for python. Home-page: https://docs.openstack.org/automaton/latest/ Author: OpenStack diff -Nru python-automaton-2.1.0/automaton.egg-info/requires.txt python-automaton-2.3.0/automaton.egg-info/requires.txt --- python-automaton-2.1.0/automaton.egg-info/requires.txt 2020-06-04 10:42:48.000000000 +0000 +++ python-automaton-2.3.0/automaton.egg-info/requires.txt 2021-02-19 11:28:12.000000000 +0000 @@ -1,3 +1,2 @@ +PrettyTable>=0.7.2 pbr!=2.1.0,>=2.0.0 -six>=1.10.0 -PrettyTable<0.8,>=0.7.2 diff -Nru python-automaton-2.1.0/automaton.egg-info/SOURCES.txt python-automaton-2.3.0/automaton.egg-info/SOURCES.txt --- python-automaton-2.1.0/automaton.egg-info/SOURCES.txt 2020-06-04 10:42:48.000000000 +0000 +++ python-automaton-2.3.0/automaton.egg-info/SOURCES.txt 2021-02-19 11:28:12.000000000 +0000 @@ -1,4 +1,5 @@ .coveragerc +.pre-commit-config.yaml .stestr.conf .zuul.yaml AUTHORS @@ -52,5 +53,6 @@ releasenotes/source/train.rst releasenotes/source/unreleased.rst releasenotes/source/ussuri.rst +releasenotes/source/victoria.rst releasenotes/source/_static/.placeholder releasenotes/source/_templates/.placeholder \ No newline at end of file diff -Nru python-automaton-2.1.0/ChangeLog python-automaton-2.3.0/ChangeLog --- python-automaton-2.1.0/ChangeLog 2020-06-04 10:42:48.000000000 +0000 +++ python-automaton-2.3.0/ChangeLog 2021-02-19 11:28:12.000000000 +0000 @@ -1,6 +1,24 @@ CHANGES ======= +2.3.0 +----- + +* Uncap PrettyTable +* Dropping lower constraints testing +* Remove six dependency +* Use TOX\_CONSTRAINTS\_FILE +* Use py3 as the default runtime for tox +* Adding pre-commit +* Add Python3 wallaby unit tests +* Update master for stable/victoria + +2.2.0 +----- + +* Update lower-constraints list +* drop mock from lower-constraints + 2.1.0 ----- diff -Nru python-automaton-2.1.0/debian/changelog python-automaton-2.3.0/debian/changelog --- python-automaton-2.1.0/debian/changelog 2020-07-28 20:06:16.000000000 +0000 +++ python-automaton-2.3.0/debian/changelog 2021-03-17 11:18:56.000000000 +0000 @@ -1,3 +1,10 @@ +python-automaton (2.3.0-0ubuntu1) hirsute; urgency=medium + + * d/control: Update VCS paths for move to lp:~ubuntu-openstack-dev. + * New upstream release for OpenStack Wallaby. + + -- Chris MacNaughton Wed, 17 Mar 2021 11:18:56 +0000 + python-automaton (2.1.0-0ubuntu1) groovy; urgency=medium * d/gbp.conf: Update gbp configuration file. diff -Nru python-automaton-2.1.0/debian/control python-automaton-2.3.0/debian/control --- python-automaton-2.1.0/debian/control 2020-07-28 20:06:16.000000000 +0000 +++ python-automaton-2.3.0/debian/control 2021-03-17 11:18:56.000000000 +0000 @@ -25,8 +25,8 @@ python3-testtools (>= 2.2.0), subunit, Standards-Version: 4.5.0 -Vcs-Browser: https://git.launchpad.net/~ubuntu-server-dev/ubuntu/+source/python-automaton -Vcs-Git: https://git.launchpad.net/~ubuntu-server-dev/ubuntu/+source/python-automaton +Vcs-Browser: https://git.launchpad.net/~ubuntu-openstack-dev/ubuntu/+source/python-automaton +Vcs-Git: https://git.launchpad.net/~ubuntu-openstack-dev/ubuntu/+source/python-automaton Homepage: https://opendev.org/openstack/automaton Package: python-automaton-doc diff -Nru python-automaton-2.1.0/doc/source/conf.py python-automaton-2.3.0/doc/source/conf.py --- python-automaton-2.1.0/doc/source/conf.py 2020-06-04 10:41:20.000000000 +0000 +++ python-automaton-2.3.0/doc/source/conf.py 2021-02-19 11:27:28.000000000 +0000 @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +# Copyright (C) 2020 Red Hat, Inc. +# # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at @@ -79,6 +81,3 @@ u'%s Documentation' % project, u'OpenStack Foundation', 'manual'), ] - -# Example configuration for intersphinx: refer to the Python standard library. -#intersphinx_mapping = {'http://docs.python.org/': None} diff -Nru python-automaton-2.1.0/lower-constraints.txt python-automaton-2.3.0/lower-constraints.txt --- python-automaton-2.1.0/lower-constraints.txt 2020-06-04 10:41:20.000000000 +0000 +++ python-automaton-2.3.0/lower-constraints.txt 2021-02-19 11:27:28.000000000 +0000 @@ -1,43 +1,34 @@ -alabaster==0.7.10 appdirs==1.3.0 -Babel==2.3.4 -chardet==3.0.4 +argparse==0.9.0 +cliff==3.1.0 +cmd2==0.8.9 coverage==4.0 -doc8==0.6.0 -docutils==0.11 dulwich==0.15.0 extras==1.0.0 fixtures==3.0.0 -flake8==2.2.4 -hacking==0.10.3 -imagesize==0.7.1 +future==0.18.2 iso8601==0.1.11 -Jinja2==2.10 keystoneauth1==3.4.0 linecache2==1.0.0 -MarkupSafe==1.0 -mccabe==0.2.1 -mock==2.0.0 -mox3==0.20.0 os-client-config==1.28.0 oslotest==3.2.0 pbr==2.0.0 -pep8==1.5.7 prettytable==0.7.2 -pyflakes==0.8.1 -Pygments==2.2.0 +pyparsing==2.4.7 +pyperclip==1.8.0 python-mimeparse==1.6.0 python-subunit==1.0.0 -pytz==2013.6 -PyYAML==3.12 reno==3.1.0 requests==2.14.2 requestsexceptions==1.2.0 -restructuredtext-lint==1.1.1 six==1.10.0 -snowballstemmer==1.2.1 -stevedore==1.20.0 stestr==2.0.0 +stevedore==1.20.0 +testrepository==0.0.20 testtools==2.2.0 +toml==0.9.3 traceback2==1.4.0 unittest2==1.1.0 +virtualenv==20.0.8 +voluptuous==0.11.7 +wcwidth==0.2.4 diff -Nru python-automaton-2.1.0/PKG-INFO python-automaton-2.3.0/PKG-INFO --- python-automaton-2.1.0/PKG-INFO 2020-06-04 10:42:48.000000000 +0000 +++ python-automaton-2.3.0/PKG-INFO 2021-02-19 11:28:12.362439400 +0000 @@ -1,6 +1,6 @@ Metadata-Version: 1.2 Name: automaton -Version: 2.1.0 +Version: 2.3.0 Summary: Friendly state machines for python. Home-page: https://docs.openstack.org/automaton/latest/ Author: OpenStack diff -Nru python-automaton-2.1.0/.pre-commit-config.yaml python-automaton-2.3.0/.pre-commit-config.yaml --- python-automaton-2.1.0/.pre-commit-config.yaml 1970-01-01 00:00:00.000000000 +0000 +++ python-automaton-2.3.0/.pre-commit-config.yaml 2021-02-19 11:27:28.000000000 +0000 @@ -0,0 +1,35 @@ +# We from the Oslo project decided to pin repos based on the +# commit hash instead of the version tag to prevend arbitrary +# code from running in developer's machines. To update to a +# newer version, run `pre-commit autoupdate` and then replace +# the newer versions with their commit hash. + +default_language_version: + python: python3 + +repos: + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: 9136088a246768144165fcc3ecc3d31bb686920a # v3.3.0 + hooks: + - id: trailing-whitespace + # Replaces or checks mixed line ending + - id: mixed-line-ending + args: ['--fix', 'lf'] + exclude: '.*\.(svg)$' + # Forbid files which have a UTF-8 byte-order marker + - id: check-byte-order-marker + # Checks that non-binary executables have a proper shebang + - id: check-executables-have-shebangs + # Check for files that contain merge conflict strings. + - id: check-merge-conflict + # Check for debugger imports and py37+ breakpoint() + # calls in python source + - id: debug-statements + - id: check-yaml + files: .*\.(yaml|yml)$ + - repo: https://gitlab.com/pycqa/flake8 + rev: fb91b994ed4adf4f2b4890e7bdba82f57e3a81df # 3.8.4 + hooks: + - id: flake8 + additional_dependencies: + - hacking>=3.1.0,<4.0 diff -Nru python-automaton-2.1.0/releasenotes/source/index.rst python-automaton-2.3.0/releasenotes/source/index.rst --- python-automaton-2.1.0/releasenotes/source/index.rst 2020-06-04 10:41:20.000000000 +0000 +++ python-automaton-2.3.0/releasenotes/source/index.rst 2021-02-19 11:27:28.000000000 +0000 @@ -6,6 +6,7 @@ :maxdepth: 1 unreleased + victoria ussuri train stein diff -Nru python-automaton-2.1.0/releasenotes/source/victoria.rst python-automaton-2.3.0/releasenotes/source/victoria.rst --- python-automaton-2.1.0/releasenotes/source/victoria.rst 1970-01-01 00:00:00.000000000 +0000 +++ python-automaton-2.3.0/releasenotes/source/victoria.rst 2021-02-19 11:27:28.000000000 +0000 @@ -0,0 +1,6 @@ +============================= +Victoria Series Release Notes +============================= + +.. release-notes:: + :branch: stable/victoria diff -Nru python-automaton-2.1.0/requirements.txt python-automaton-2.3.0/requirements.txt --- python-automaton-2.1.0/requirements.txt 2020-06-04 10:41:20.000000000 +0000 +++ python-automaton-2.3.0/requirements.txt 2021-02-19 11:27:28.000000000 +0000 @@ -5,8 +5,5 @@ # See: https://bugs.launchpad.net/pbr/+bug/1384919 for why this is here... pbr!=2.1.0,>=2.0.0 # Apache-2.0 -# Python 2->3 compatibility library. -six>=1.10.0 # MIT - # For pretty formatting machines/state tables... -PrettyTable<0.8,>=0.7.2 # BSD +PrettyTable>=0.7.2 # BSD diff -Nru python-automaton-2.1.0/test-requirements.txt python-automaton-2.3.0/test-requirements.txt --- python-automaton-2.1.0/test-requirements.txt 2020-06-04 10:41:20.000000000 +0000 +++ python-automaton-2.3.0/test-requirements.txt 2021-02-19 11:27:28.000000000 +0000 @@ -2,10 +2,9 @@ # of appearance. Changing the order has an impact on the overall integration # process, which may cause wedges in the gate later. -hacking>=3.0,<3.1.0 # Apache-2.0 - coverage!=4.4,>=4.0 # Apache-2.0 oslotest>=3.2.0 # Apache-2.0 stestr>=2.0.0 # Apache-2.0 testtools>=2.2.0 # MIT reno>=3.1.0 # Apache-2.0 + diff -Nru python-automaton-2.1.0/tox.ini python-automaton-2.3.0/tox.ini --- python-automaton-2.1.0/tox.ini 2020-06-04 10:41:20.000000000 +0000 +++ python-automaton-2.3.0/tox.ini 2021-02-19 11:27:28.000000000 +0000 @@ -1,18 +1,20 @@ [tox] minversion = 3.1.1 -envlist = py38,docs,pep8 +envlist = py3,docs,pep8 ignore_basepython_conflict = true [testenv] basepython = python3 deps = - -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} + -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} -r{toxinidir}/test-requirements.txt -r{toxinidir}/requirements.txt commands = stestr run --slowest {posargs} [testenv:pep8] -commands = flake8 {posargs} +deps = + pre-commit>=2.6.0 # MIT +commands = pre-commit run -a [testenv:venv] commands = {posargs} @@ -22,7 +24,7 @@ [testenv:docs] deps = - -c{env:UPPER_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} + -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master} -r{toxinidir}/doc/requirements.txt commands = doc8 --ignore-path "doc/source/history.rst" doc/source diff -Nru python-automaton-2.1.0/.zuul.yaml python-automaton-2.3.0/.zuul.yaml --- python-automaton-2.1.0/.zuul.yaml 2020-06-04 10:41:20.000000000 +0000 +++ python-automaton-2.3.0/.zuul.yaml 2021-02-19 11:27:28.000000000 +0000 @@ -2,8 +2,7 @@ templates: - check-requirements - lib-forward-testing-python3 - - openstack-lower-constraints-jobs - - openstack-python3-victoria-jobs + - openstack-python3-wallaby-jobs - periodic-stable-jobs - publish-openstack-docs-pti - release-notes-jobs-python3