Ironman

PyPI version Docs

Build Status codecov Code Health

What is Ironman?

Ironman is a general purpose software toolbox to be run on L1Calo hardware with embedded processors (SoCs).

Look how easy it is to use

>>> import ironman
>>> # Get your stuff done
>>> ironman.engage()

Features

  • Be awesome

  • Make things faster

Getting Started

Installing

Install ironman by running

pip install ironman

Developing

If it is your first time…

git clone git@github.com:kratsg/ironman
cd ironman && mkvirtualenv ironman
pip install -r requirements.txt

and then afterwards…

workon ironman
python setup.py develop
... do work here ...
pip uninstall ironman

Testing

tox

or with

py.test

Support

If you are having issues, let us know.

Releasing

  1. Do some work on your package (i.e. fix bugs, add features, etc)

  2. Make sure the tests pass. Run pytest.

  3. Update the __version__ number via bump2version.

  4. Push to the default branch.

Tutorial

Since we will be predominantly using Twisted within the Zynq to manage the Reactor workflow (“callbacks”), I suggest reading through this tutorial on your own time to get up to speed on how it works and some details of sockets.

I’m following the guide based on sandman here

Ideas

  • make it like twisted.web - we build Request objects which need to find Resource objects that provide actions (maybe too complicated, try and simplify?) link