1.1. Dependencies
At the origin, Undulate only need a Python 3. The strategy is to always support active python releases which at this date correspond to latest 4 versions.
By the time, the json/jsonml format is not adapted to human during a long documentation process. Some text formats are more user-friendly. Undulate also digests PyYAML and Toml as well.
For the rendering, SVG is the legacy format of Wavedrom. SVG is well-known, simple, and versatile vector format for the web. However, the integration into Word/LibreOffice Writer/Latex documentation is a limiting factor. So without any extra module, Undulate, as Wavedrom, only export to the SVG format. By adding PyCairo (the source of the Egyptian logo style), Undulate can export to:
SVG
EPS
PS
PDF
PNG
To install PyCairo, check for your operating system its requirements.
To install the complete set of dependencies run in a terminal
pip install pyyaml toml pycairo
Note
Undulate can run without those dependencies. You desire to use a feature requiring one of those module an error message will advise you which module need to be installed.
$> undulate -i "./unsupported.yaml"
CRITICAL: To read yaml file PyYAML is required. Run 'pip install pyyaml'
$> undulate -i "./unsupported.toml"
CRITICAL: To read toml file toml is required. Run 'pip install toml'
Tip
You want to contribute on the project or you forked it ?
All needed modules are in the requirements.txt file at the top of the project. To install them run
pip install -r requirements.txt
- To check the similarity between two images, tests/checks.py needs:
This was used to compare the results between Wavedrom and Undulate.