_images/logo.svg
Sourcecode on GitHub Code license Documentation - Read Now! Documentation License
PyPI - Tag PyPI - Status PyPI - Python Version
GitHub Workflow - Build and Test Status Libraries.io status for latest release Codacy - Quality Codacy - Line Coverage Codecov - Branch Coverage

The pyEDAA.OutputFilter Documentation

Proposal to define an abstract model for outputs from EDA tools and logging libraries.

_images/work-in-progress.png

Main Goals

  • Live and offline parsing and classification of message lines from tool outputs.

  • Provide a data model for tool specific log files.

  • Extract values, lists and tables of embedded reports or summaries.

  • Implement checks and policies.

Use Cases

  • Write colorized logs to CI server logs or to shells based on classification.

  • Increase or decrease the severity level of message.

  • List messages of a certain kind (e.g. unused sequential elements).

  • Check for existence / non-existence of messages or outputs (e.g. latches).

  • Collect statistics and convert to datasets for a time series database (TSDB).

Examples

List all warnings

from pyEDAA.OutputFilter.Xilinx.Synthesis import Processor

logfile = Path("tests/data/Stopwatch/toplevel.vds")
processor = Processor(logfile)
processor.Parse()

print(f"CRITICAL WARNING Messages ({len(processor.CriticalWarningMessages}):")
for message in processor.CriticalWarningMessages:
  print(f"  {message}")

Contributors

Todo

add license texts here