Content
Status handling
Status are stored in a backend that ensures we are threadsafe and that we have serialization.
State Machine
A simple wrapper around a process that provides communication around the execution and (should)
handle time outs.
Messaging
normally not needed outside of satlive (except parse_event)
Ensures a consistency between message emission and reception
Topological connection settings
state_machine.get_connection set the connections of your step magically
according to the imperative of the graph. Because, a distributed system
is mainly processes connected in a directed graph.
Version
This a safe subset of http://www.python.org/dev/peps/pep-0440/#version-scheme
Given it is broken for now I use a safe subset :
Given a version X.Y.Z where X Y Z are strings
by convention X and Y are numbers
Z is alphanumeric lower case default “0”
- X is the major version number. X+=1 <=> big change in philosophy API
- Y is the minor version number. Y+=1 <=> API has changed (ascendant compatibility is broken)
- Z is a bugfix/feature addition: it shall not break any program already using the API
V1 > V2 should be true has much as in number as in alphanumeric sens.
- Z belongs to [a-z0-9]
- X and Y belongs to [0-9]+
Yes we are limited to 36 versions per API
if needed and you must extends Z remember to keep string and number sorting consistent.