Ah, maybe I just got lucky. I tried again and got:
❯ julia --project=@121233
_
_ _ _(_)_ | Documentation: https://docs.julialang.org
(_) | (_) (_) |
_ _ _| |_ __ _ | Type "?" for help, "]?" for Pkg help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 1.11.0 (2024-10-07)
_/ |\__'_|_|_|\__'_| | Official https://julialang.org/ release
|__/ |
julia> using GraphViz
julia> using FileIO
julia> using CairoMakie # CairoMakie loaded before Cairo
julia> using Cairo
julia> FileIO.save("tmp.png", dot"""
digraph graphname {
a -> b -> c;
b -> d;
}
""")
Error: renderer for julia:cairo is unavailable
Errors encountered while save File{DataFormat{:PNG}, String}("tmp.png").
All errors:
===========================================
MethodError: no method matching save(::File{DataFormat{:PNG}, String}, ::GraphViz.Graph)
The function `save` exists, but no method is defined for this combination of argument types.
Closest candidates are:
save(::File{DataFormat{:PNG}}, ::S; kwargs...) where {T, S<:Union{AbstractArray{T, 3}, AbstractMatrix}}
@ ImageIO ~/.julia/packages/ImageIO/eR22t/src/ImageIO.jl:69
save(::File{DataFormat{:QOI}}, ::Any...; kwargs...)
@ ImageIO ~/.julia/packages/ImageIO/eR22t/src/ImageIO.jl:152
save(::File{DataFormat{:EXR}}, ::Any...; kwargs...)
@ ImageIO ~/.julia/packages/ImageIO/eR22t/src/ImageIO.jl:141
...
===========================================
ArgumentError: Package ImageMagick [6218d12a-5da1-5696-b52f-db25d2ecc6d1] is required but does not seem to be installed:
- Run `Pkg.instantiate()` to install all recorded dependencies.
===========================================
ArgumentError: Package OpenCV [f878e3a2-a245-4720-8660-60795d644f2a] is required but does not seem to be installed:
- Run `Pkg.instantiate()` to install all recorded dependencies.
===========================================
MethodError: no method matching show(::IOContext{IOStream}, ::MIME{Symbol("image/png")}, ::Nothing)
The function `show` exists, but no method is defined for this combination of argument types.
Closest candidates are:
show(::IO, ::MIME{Symbol("image/png")}, ::GraphViz.Graph)
@ GraphViz ~/.julia/packages/GraphViz/IsUMl/src/cairo.jl:94
show(::IO, ::MIME{Symbol("image/png")}, ::CairoSurface)
@ Cairo ~/.julia/packages/Cairo/Sq97f/src/Cairo.jl:459
show(::IO, ::MIME{Symbol("text/plain")}, ::Any)
@ Base multimedia.jl:47
...
===========================================
Fatal error:
ERROR: MethodError: no method matching save(::File{DataFormat{:PNG}, String}, ::GraphViz.Graph)
The function `save` exists, but no method is defined for this combination of argument types.
Closest candidates are:
save(::File{DataFormat{:PNG}}, ::S; kwargs...) where {T, S<:Union{AbstractArray{T, 3}, AbstractMatrix}}
@ ImageIO ~/.julia/packages/ImageIO/eR22t/src/ImageIO.jl:69
save(::File{DataFormat{:QOI}}, ::Any...; kwargs...)
@ ImageIO ~/.julia/packages/ImageIO/eR22t/src/ImageIO.jl:152
save(::File{DataFormat{:EXR}}, ::Any...; kwargs...)
@ ImageIO ~/.julia/packages/ImageIO/eR22t/src/ImageIO.jl:141
...
Stacktrace:
[1] #invokelatest#2
@ ./essentials.jl:1054 [inlined]
[2] invokelatest
@ ./essentials.jl:1051 [inlined]
[3] action(call::Symbol, libraries::Vector{Union{…}}, file::Formatted, args::GraphViz.Graph; options::@Kwargs{})
@ FileIO ~/.julia/packages/FileIO/xOKyx/src/loadsave.jl:219
[4] action
@ ~/.julia/packages/FileIO/xOKyx/src/loadsave.jl:196 [inlined]
[5] action
@ ~/.julia/packages/FileIO/xOKyx/src/loadsave.jl:185 [inlined]
[6] save(file::String, args::GraphViz.Graph; options::@Kwargs{})
@ FileIO ~/.julia/packages/FileIO/xOKyx/src/loadsave.jl:129
[7] save(file::String, args::GraphViz.Graph)
@ FileIO ~/.julia/packages/FileIO/xOKyx/src/loadsave.jl:125
[8] top-level scope
@ REPL[5]:1
Stacktrace:
[1] handle_error(e::MethodError, q::Base.PkgId, bt::Vector{Union{Ptr{Nothing}, Base.InterpreterIP}})
@ FileIO ~/.julia/packages/FileIO/xOKyx/src/error_handling.jl:61
[2] handle_exceptions(exceptions::Vector{Tuple{Any, Union{Base.PkgId, Module}, Vector}}, action::String)
@ FileIO ~/.julia/packages/FileIO/xOKyx/src/error_handling.jl:56
[3] action(call::Symbol, libraries::Vector{Union{…}}, file::Formatted, args::GraphViz.Graph; options::@Kwargs{})
@ FileIO ~/.julia/packages/FileIO/xOKyx/src/loadsave.jl:228
[4] action
@ ~/.julia/packages/FileIO/xOKyx/src/loadsave.jl:196 [inlined]
[5] action
@ ~/.julia/packages/FileIO/xOKyx/src/loadsave.jl:185 [inlined]
[6] save(file::String, args::GraphViz.Graph; options::@Kwargs{})
@ FileIO ~/.julia/packages/FileIO/xOKyx/src/loadsave.jl:129
[7] save(file::String, args::GraphViz.Graph)
@ FileIO ~/.julia/packages/FileIO/xOKyx/src/loadsave.jl:125
[8] top-level scope
@ REPL[5]:1
Some type information was truncated. Use `show(err)` to see complete types.