Skip to content

Add configurability of graphiz-java 's engine #3

Open
@mikolak-net

Description

@mikolak-net

graphviz-java offers several implementations of Graphviz. The problem is that those implementations are quite "fragile", i.e. if the first one defined is determined to be "available" by graphviz-java, it will be used even if it causes errors down the line on a specific machine.

An example here is an old CLI version of Graphviz unable to create a specific format, or a Nashhorn version unable to initialize due to JVM bugs/peculiarities, eventually throwing an NPE or similar.

  • A stopgap is to add a config entry that is parsed into the preferred engine sequence.
  • A long-term solution would be to wrap invocations on different engines into an execution-deferral abstraction (such as Try) and provide proper fallback support.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions