Skip to content

jalavik/workflow

 
 

Repository files navigation

workflow

https://travis-ci.org/inveniosoftware/workflow.png?branch=master https://coveralls.io/repos/inveniosoftware/workflow/badge.png?branch=master https://pypip.in/v/workflow/badge.png https://pypip.in/d/workflow/badge.png

About

Workflow is a Finite State Machine with memory. It is used to execute set of methods in a specified order.

Here is a simple example of a workflow configuration:

[
  check_token_is_wanted, # (run always)
  [                      # (run conditionally)
     check_token_numeric,
     translate_numeric,
     next_token          # (stop processing, continue with next token)
     ],
  [                      # (run conditionally)
     check_token_proper_name,
     translate_proper_name,
     next_token          # (stop processing, continue with next token)
     ],
  normalize_token,       # (only for "normal" tokens)
  translate_token,
]

Documentation

Documentation is readable at http://workflow.readthedocs.org or can be built using Sphinx:

pip install Sphinx
python setup.py build_sphinx

Installation

Workflow is on PyPI so all you need is:

pip install workflow

Testing

Running the test suite is as simple as:

python setup.py test

or, to also show code coverage:

./run-tests.sh

About

Simple Pythonic Workflows

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.8%
  • Shell 0.2%