New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

plantuml (8028) makes dot/graphviz crash on Win and OSX #112

Closed
ascheman opened this Issue May 26, 2016 · 6 comments

Comments

Projects
None yet
3 participants
@ascheman

We currently have an AsciiDoctor Maven project which uses PlantUML.
One of the diagrams make dot/GraphViz crash from the attached PUML file (html5-architecture.puml.zip) on OSX and Windows. It works on Linux.

From the plantuml project we got the hint that this is solved in the 8037 version (cf. http://plantuml.com/plantuml/svg/bL0nJiGm4EppYbLeG28Leg6W80YTu910INU-OcKlYR6nZuqDH8Y_4mUEHEYGZiwUdPcTsSvejq769sZHgLVM8P23m94ovnL1VXaDbTx1ehvTdkRmdgskxoDnBvZfEMecmSPvQNmCWgDJn9tqJEjiDIe4brLriiu-lkqMTNqtkk0ZlatmqakqLV2C3NqjgS3Ei8avvh4UpKYxeLwc3mpyqcfo8J47AAef-WLAGqxbS61rquQ6iK_Q6gtf15_XYnzgq_3SkYMF51IAuXmE_-OTmHc4D3qM_B0TpvI_Ikocpwj34JUZS9yJxxRxkSy-uJ66Tgxuv_Oa_mG0).

Could you please update asciidoctor-diagram to use the latest plantuml version?

The diagram is part of the following project:

https://github.com/dukecon/dukecon.git

Just check it out and run "mvn generate-resources" on Win7 or OSX to find the broken SVG in target/generated-docs/de/images/html5-architecture.svg.

Thanks,
Gerd

@ascheman

This comment has been minimized.

Show comment
Hide comment
@ascheman

ascheman May 27, 2016

PlantUML <plantuml@gmail.com> suggested to use the latest version and give it a try. I updated my local asciidoctorj-diagram-1.3.1.jar with a new gems/asciidoctor-diagram-1.3.1/lib/plantuml.jar. However, the current version of plantuml (8041) has an API incompatibility since a class was dropped. This leads to an execution error:

Failed to execute goal org.asciidoctor:asciidoctor-maven-plugin:1.5.3:process-asciidoc (generate-html-doc-de) on project dukecon: Execution generate-html-doc-de of goal org.asciidoctor:asciidoctor-maven-plugin:1.5.3:process-asciidoc failed: An API incompatibility was encountered while executing org.asciidoctor:asciidoctor-mavenplugin:1.5.3:process-asciidoc: java.lang.NoSuchMethodError: net.sourceforge.plantuml.OptionFlags.setDotExecutable(Ljava/lang/String;)V

It is already solved in the current plantuml beta and should be published in the next official version.

PlantUML <plantuml@gmail.com> suggested to use the latest version and give it a try. I updated my local asciidoctorj-diagram-1.3.1.jar with a new gems/asciidoctor-diagram-1.3.1/lib/plantuml.jar. However, the current version of plantuml (8041) has an API incompatibility since a class was dropped. This leads to an execution error:

Failed to execute goal org.asciidoctor:asciidoctor-maven-plugin:1.5.3:process-asciidoc (generate-html-doc-de) on project dukecon: Execution generate-html-doc-de of goal org.asciidoctor:asciidoctor-maven-plugin:1.5.3:process-asciidoc failed: An API incompatibility was encountered while executing org.asciidoctor:asciidoctor-mavenplugin:1.5.3:process-asciidoc: java.lang.NoSuchMethodError: net.sourceforge.plantuml.OptionFlags.setDotExecutable(Ljava/lang/String;)V

It is already solved in the current plantuml beta and should be published in the next official version.

@arnaudroques

This comment has been minimized.

Show comment
Hide comment
@arnaudroques

arnaudroques May 27, 2016

The issue is really on PlantUML side:
Due to some internal refactoring, we have removed the method OptionFlags.setDotExecutable()

We will restore it in next official release that will be published before the end of the month.
You can already test it using last beta https://dl.dropboxusercontent.com/u/13064071/plantuml.jar

Thanks for pointing this out!

The issue is really on PlantUML side:
Due to some internal refactoring, we have removed the method OptionFlags.setDotExecutable()

We will restore it in next official release that will be published before the end of the month.
You can already test it using last beta https://dl.dropboxusercontent.com/u/13064071/plantuml.jar

Thanks for pointing this out!

pepijnve added a commit that referenced this issue May 27, 2016

@pepijnve pepijnve added this to the 1.5.0 milestone May 27, 2016

@pepijnve pepijnve self-assigned this May 27, 2016

@pepijnve

This comment has been minimized.

Show comment
Hide comment
@pepijnve

pepijnve May 27, 2016

Contributor

I've updated PlantUML to v8041. The Java code now does a lookup of the setDotExecutable via reflection. It will use the OptionFlags variant if available and the GraphvizUtils variant as fallback.

Contributor

pepijnve commented May 27, 2016

I've updated PlantUML to v8041. The Java code now does a lookup of the setDotExecutable via reflection. It will use the OptionFlags variant if available and the GraphvizUtils variant as fallback.

pepijnve added a commit to pepijnve/asciidoctor-diagram that referenced this issue May 27, 2016

@arnaudroques

This comment has been minimized.

Show comment
Hide comment
@arnaudroques

arnaudroques May 27, 2016

Thanks for the quick work-around! We'll still publish a corrected version, because other tools may also be impacted by this setDotExecutable move.

Thanks for the quick work-around! We'll still publish a corrected version, because other tools may also be impacted by this setDotExecutable move.

@pepijnve

This comment has been minimized.

Show comment
Hide comment
@pepijnve

pepijnve May 27, 2016

Contributor

@ascheman fyi I'm going to publish 1.5.0 with this fix asap. Noticed some CI test failures on Windows that I still want to investigate further first.

Contributor

pepijnve commented May 27, 2016

@ascheman fyi I'm going to publish 1.5.0 with this fix asap. Noticed some CI test failures on Windows that I still want to investigate further first.

@ascheman

This comment has been minimized.

Show comment
Hide comment
@ascheman

ascheman May 27, 2016

Thanks @pepijnve, but there is no hurry required. I have my local workaround with the patched 1.3.1 version for OSX and on my Linux based CI server it was working anyways.

Thanks @pepijnve, but there is no hurry required. I have my local workaround with the patched 1.3.1 version for OSX and on my Linux based CI server it was working anyways.

@pepijnve pepijnve closed this Jun 12, 2016

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment