Metadata-Version: 2.0
Name: botoflow
Version: 0.8
Summary: Botoflow is an asynchronous framework for Amazon SWF that helps you build SWF applications using Python
Home-page: https://github.com/boto/botoflow
Author: Amazon.com, Darjus Loktevic
Author-email: darjus@gmail.com
License: Apache License 2.0
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: Natural Language :: English
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Requires-Dist: botocore (>=1.1.10)
Requires-Dist: six (>=1.2.0)
Requires-Dist: dill (>=0.2)
Requires-Dist: retrying (>=1.3.3)

================================================
Botoflow - Asynchronous Framework for Amazon SWF
================================================

|Version| |Documentation| |Build Status| |Coverage|

Botoflow is an asynchronous framework for `Amazon SWF`_ that helps you
build SWF applications using Python. You can find the latest, most
up to date, documentation at `Read the Docs`_ including the "Getting Started Guide".

Under the hood it uses `botocore`_ low level interface to interact with `Amazon SWF`_.

.. _`botocore`: https://github.com/boto/botocore
.. _`Read the Docs`: https://botoflow.readthedocs.io/en/latest/
.. _`Amazon SWF`: https://aws.amazon.com/swf/
.. |Version| image:: https://img.shields.io/pypi/v/botoflow.svg
    :target: https://pypi.python.org/pypi/botoflow
    :alt: Version
.. |Documentation| image:: https://readthedocs.org/projects/botoflow/badge/?version=latest
    :target: https://botoflow.readthedocs.io
    :alt: Documentation
.. |Build Status| image:: https://img.shields.io/circleci/project/boto/botoflow.svg
    :target: https://circleci.com/gh/boto/botoflow
    :alt: Build Status
.. |Coverage| image:: https://img.shields.io/codecov/c/github/boto/botoflow.svg?maxAge=2592000
    :target: https://codecov.io/gh/boto/botoflow
    :alt: Coverage

Issue tracker
-------------

Please report any bugs or enhancement ideas using our issue tracker:
https://github.com/boto/botoflow/issues . Also, feel free to ask any
other project related questions there.


Development
-----------

Getting Started
~~~~~~~~~~~~~~~
Assuming that you have Python and ``virtualenv`` installed, set up your
environment and install the required dependencies:

.. code-block:: sh

    $ git clone https://github.com/boto/botoflow.git
    $ cd botoflow
    $ virtualenv venv
    ...
    $ . venv/bin/activate
    $ pip install -r requirements.txt
    $ pip install -e .

Running Tests
~~~~~~~~~~~~~
You can run tests in all supported Python versions using ``tox``. By default,
it will run all of the unit tests, but you can also specify your own
``pytest`` options. Note that this requires that you have all supported
versions of Python installed, otherwise you must pass ``-e`` or run the
``pytest`` command directly:

.. code-block:: sh

    $ tox
    $ tox test/unit/test_workflow_time.py
    $ tox -e py27,py34 test/integration

You can also run individual tests with your default Python version:

.. code-block:: sh

    $ py.test -v test/unit

Generating Documentation
~~~~~~~~~~~~~~~~~~~~~~~~
Sphinx is used for documentation. You can generate HTML locally with the
following:

.. code-block:: sh

    $ pip install -r requirements-docs.txt
    $ cd docs
    $ make html


