Closed rkrug closed 1 year ago
Hi. This package looks fantastic and I will be giving it a go shortly.
I can't work out if the dot dependency is a dependency of the plantUML java library or a dependency of this R code. If it is the latter I managed to get a javascript version of dot working within R for one of my projects. The code for which is here:
https://github.com/terminological/dtrackr/blob/main/R/dot.R
and the bundled vis.js lib is in inst/lib (N.b. which has to be an old version as they migrated to a complex npm based packaging after this version.)
This has worked for generating dot diagrams for me. You are welcome to rip and re-use if it fits in to this framework, although I see you are heading towards using a remote server setup which also makes sense.
Ha. I don;t think my last comment will be helpful.
I had a look at the plantuml internals and doesn't look like it uses dot directly anymore. Seems like there are multiple methods of layout out diagrams and only some of them use graphviz directly. It also seems to bundle visjs internally as well. Super confusing.
Thanks for c x our comment and that you like plamtuml.
Quick answer: it was a plantuml dependency, but not anymore when using a specific argument. I do not know if I applied this but I will. But habe no time in the next weeks. I will answer in more detail later.
Sent from my iPhone
On 24 Jun 2022, at 16:03, Rob Challen @.***> wrote:
Ha. I don;t think my last comment will be helpful.
I had a look at the plantuml internals and doesn't look like it uses dot directly anymore. Seems like there are multiple methods of layout out diagrams and only some of them use graphviz directly. It also seems to bundle visjs internally as well. Super confusing.
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you were assigned.
OK. Longer response.
I have found the reference in the to the internal dot replacement - see https://plantuml.com/smetana02 Smetana.
I am planning to include this (-Playout=smetana
) in the call of plantuml, but did not do it yet. This would make a dot installation unnecessary.
In addition, I want to move to a complete generation using a web command structure, using the integrated pico web (https://plantuml.com/picoweb) when local installation exists, otherwise the remote pantuml server.
So there are quite a few things in set pipeline, which I will implement in the dev branch before releasing the next major version (I will not do any further releases of the current master version before the m=next major release). I will also try to bring it to CRAN after the next release.
Please feel free to check out the dev branch, as the final syntax will be more similar than the one in the master branch at the moment.
Cheers,
Rainer
The package now uses the web server as default, therefore no dependencies needed. For the local plot generation, the picowebserver in plantuml is used and also no dot is needed.
So this problem should be solved.
The package plantuml depends on dot to be installed.
A missing dot installation can lead to error messages.
As the installation of graphviz (which includes dot) is different from platform to platform, a missing dot installation should print an informative warning.
Starting point:
Write function
instsllationOK(error = TRUE)
whichplantuml not installed. Run 'plantuml::updatePlantumlJar()' to install.
error messageplantuml -testdot
to check if dot (graphviz) is installed. If not, raise error withPlantUML needs dot to run. dot is part of graphviz. ADDITIONAL INFO?