-
Notifications
You must be signed in to change notification settings - Fork 7
Open
Labels
good first issueGood for newcomersGood for newcomers
Milestone
Description
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
Labels
good first issueGood for newcomersGood for newcomers