automat
Self-service finite-state machines for the programmer on the go.
25.4.16
14M downloads/mo
#1239 most downloaded on PyPI
glyph/automat
What this package is like to depend on
Last release 1 years ago
16 Apr 2025
Release timing varies
gaps range from 2 weeks to 2.7 years
This project publishes no release notes
the list below is its commits, not an announcement
1 version withdrawn
withdrawn after publishing
12 years old
14 releases · first in 2014
0 releases in the last 12 months
see the full history below
Release timeline
13 releases · Sep 2014 to Apr 2025Releases
latest 14-
25.4.1616 Apr 2025Commits, not release notes
This project publishes no release notes. Between
v24.8.1andv25.4.16there were 14 commits, 7 of them substantive:- chore: apply typed classifier
- Adopt Tidelift for security policy.
- security maintenance plan
- Allow return type annotations.
- allow 'hatch version' to work
- drop (unsupported) 3.8, add 3.13, add 3.9, lint on 3.13
- metadata updates
-
24.8.119 Aug 2024Commits, not release notes
This project publishes no release notes. Between
v24.8.0andv24.8.1there were 2 commits, 1 of them substantive:- add requires-python metadata
-
24.8.018 Aug 2024 withdrawnIncorrect requires-python metadata caused errors for 3.7 users.
Commits, not release notes
This project publishes no release notes. Between
v22.10.0andv24.8.0there were 250 commits, 228 of them substantive:- literal translation of example
- mark as typed
- the future is now
- magically propagate required attributes
- refactoring
- change lifecycle so that we are instantiating stuff with the right args
- oh hey we can totally make .build typecheck now that ParamSpec works
- correct implementation of persist flag
- CI fixes, version compat
- wip
- fix
- let me see the error codes for more precise type:ignores
- bug workarounds, rip out examples
- temporary home for examples
- fix up some semantics, do DI for public & private interfaces into states
- that lives in a different example now
- correct syntax
- an test
- why is codecov always wrong about everything
- some more coverage
…and 208 more.
-
22.10.029 Oct 2022Commits, not release notes
This project publishes no release notes. Between
v20.2.0andv22.10.0there were 37 commits, 25 of them substantive:- Fix _test_visualize.py twisted import errors
- Delete make.bat
- Added double-spaces after embedded youtube links
- drop py27, pypy27
- Fix #127: Add explanation for how to use assert to pacify mypy
- Fix #129: Fix docs to remove invalid next
- Fix #17: Allow enter to have a default
- Use CodeType.replace() in copycode for Python > 3.8
- Remove indentation level for easier review
- start attempting to fix ci
- fix tox dep structure, env list
- ho hum
- no lint yet
- uh, what
- try to modernize
- again
- why is the behavior so different in the cloud
- mypy extras for typing
- ignore missing imports
- we'll set some options later, but create the section to silence the warning now
…and 5 more.
-
20.2.016 Feb 2020Commits, not release notes
This project publishes no release notes. Between
v0.8.0andv20.2.0there were 2 commits, 1 of them substantive:- Fix attrs warnings
-
0.8.020 Oct 2019Commits, not release notes
This project publishes no release notes. Between
v0.7.0andv0.8.0there were 23 commits, 15 of them substantive:- Remove support for EOL Python 3.3
- Upgrade Python syntax with pyupgrade https://github.com/asottile/pyupgrade
- stop double-building PRs
- Fix visualize.rst minor bug
- constrain twisted dep for python 3.4
- Correct ReadTheDocs badge
- Remove Python 3.4 and add 3.8.
- Don't claim to support 3.4
- Claim to support 3.7
- Make Travis matrix match the tox configuration.
- Allow 3.8 to fail in Travis.
- Add support for positional only arguments
- \3.8 shouldn't fail any more.
- Claim 3.8 support.
- Retrieve Automat's version from the installed distribution.
-
0.7.014 Jun 2018Commits, not release notes
This project publishes no release notes. Between
v0.6.0andv0.7.0there were 43 commits, 28 of them substantive:- Depend on an attrs that supports frozen
- Braino: next => itemgetter(0)
- changed all "machine" decorators and references thereof to "_machine" for consistency
- Adds basic example on how to use automat-visualize
- Add classifiers to setup.py
- typo in README: s/b dont_have_beans
- Fixes typos and makes suggested changes
- simple transitions per second benchmark - starting to solve #60
- added benchmark environments to tox.ini for py33, py34, py35
- Adds missing backtick
- Fixes one last typo
- add api docs
- change public docstrings to reStructuredText format
- add links to upon()
- remove the indicies and tables section that poinst to nonthing
- accept outputs with fewer arguments than their inputs per #29
- add unit tests
- clarify conditional
- Update automat_example.py
- change conditional to check for attribute
…and 8 more.
-
0.6.016 May 2017Commits, not release notes
This project publishes no release notes. Between
v0.5.0andv0.6.0there were 25 commits, 17 of them substantive:- Conform author metadata to
distutils.coreAPI - tox/travis: enable tests on py3.5
- reject duplicate transitions (same starting state and input)
- Assert that 'input' function bodies are empty, to avoid surprises.
- cleanup: s/assert_no_code/assertNoCode/
- improve function-is-empty test to work on py3.6 too
- sigh, add more code to attain full test coverage
- add a comment: this check doesn't catch non-None returns
- improve tests: more cases, make pyflakes-clean
- cover the specimen functions in tests, remove ordify()
- tox/travis: enable tests on py3.6
- use version-specific travis environments
- add tracing API, with docs
- tracer can return a callable to see Output invocations
- make setTrace a private API, document cautions about its use
- Merge PR36: add (private) tracing API
- Make hashable classes frozen for attrs 17.1.0 (fixes #62).
- Conform author metadata to
-
0.5.008 Feb 2017Commits, not release notes
This project publishes no release notes. Between
v0.4.0andv0.5.0there were 6 commits, 3 of them substantive:- add more metadata to setup
- graphviz() -> asDigraph()
- Use inspect.getfullargspec on Py3 to avoid deprecation warnings with inspect.getargspec
-
0.4.024 Jan 2017Nothing published for this version
-
0.3.022 Dec 2015Nothing published for this version
-
0.2.017 Jul 2015Nothing published for this version
-
0.1.120 Sep 2014Nothing published for this version
-
0.0.1no dateNothing published for this version