* We try to import `OrderedDict` from the standard library, which is only available on python >= 2.7, if `ImportError` is raised we try to import it from `ordereddict`, a package available in PyPi. As a last resort, we provide our own implementation based on http://code.activestate.com/recipes/576669/.
* Update all code requiring `OrderDict` to use our compatible import module.
For ordered execution, PyDSL requires py2.7 or above. Although, it's
possible to make it work with a third-party OrderedDict implementation
like the yaml renderer does..., this is not bothered here.
No more errors are shown because the configuration files are not readable, and in fact, the minion configuration can be use, unlike what was said in the comment.
- Added implicit ordering to pydsl.(turned on via __pydsl__.set(ordered=True))
- Fixed a KeyError bug in stateconf renderer that happens during id renaming.
- The stateconf renderer now generates a no-op start state as the
"first" state in a sls file.(enabled via -s)
- Made the stateconf renderer take high state input via the new -p
option, so we can pipe pydsl output into it.
- Added more and fixed some test cases for stateconf and pydsl.