JuliaTopOpt / TopOpt.jl

A package for binary and continuous, single and multi-material, truss and continuum, 2D and 3D topology optimization on unstructured meshes using automatic differentiation in Julia.
https://juliatopopt.github.io/TopOpt.jl/
Other
181 stars 30 forks source link

Makie and GLMakie problem #153

Open pitipatw opened 1 year ago

pitipatw commented 1 year ago

I'm working on M2 pro chip and this error shows up when ever I try to use TopOpt.jl with Makie, GLMakie.

What I found primarily is this only happens with the M2 pro chip (Windows and M1 Pro chip works fine)

┌ Warning: Error requiringGLMakiefromTopOpt.TopOptProblems.Visualization │ exception = │ LoadError: UndefVarError: RGBAf not defined │ Stacktrace: │ [1] include(mod::Module, _path::String) │ @ Base ./Base.jl:419 │ [2] include(x::String) │ @ TopOpt.TopOptProblems.Visualization ~/.julia/packages/TopOpt/kFNXz/src/TopOptProblems/Visualization/Visualization.jl:1 │ [3] macro expansion │ @ ~/.julia/packages/Requires/Z8rfN/src/Requires.jl:40 [inlined] │ [4] top-level scope │ @ ~/.julia/packages/TopOpt/kFNXz/src/TopOptProblems/Visualization/Visualization.jl:10 │ [5] eval(m::Module, e::Any) │ @ Core ./boot.jl:368 │ [6] top-level scope │ @ none:1 │ [7] eval │ @ ./boot.jl:368 [inlined] │ [8] eval │ @ ~/.julia/packages/TopOpt/kFNXz/src/TopOptProblems/Visualization/Visualization.jl:1 [inlined] │ [9] (::TopOpt.TopOptProblems.Visualization.var"#8#11")() │ @ TopOpt.TopOptProblems.Visualization ~/.julia/packages/Requires/Z8rfN/src/require.jl:101 │ [10] macro expansion │ @ timing.jl:382 [inlined] │ [11] err(f::Any, listener::Module, modname::String, file::String, line::Any) │ @ Requires ~/.julia/packages/Requires/Z8rfN/src/require.jl:47 │ [12] (::TopOpt.TopOptProblems.Visualization.var"#7#10")() │ @ TopOpt.TopOptProblems.Visualization ~/.julia/packages/Requires/Z8rfN/src/require.jl:100 │ [13] withpath(f::Any, path::String) │ @ Requires ~/.julia/packages/Requires/Z8rfN/src/require.jl:37 │ [14] (::TopOpt.TopOptProblems.Visualization.var"#6#9")() │ @ TopOpt.TopOptProblems.Visualization ~/.julia/packages/Requires/Z8rfN/src/require.jl:99 │ [15] #invokelatest#2 │ @ ./essentials.jl:729 [inlined] │ [16] invokelatest │ @ ./essentials.jl:726 [inlined] │ [17] foreach(f::typeof(Base.invokelatest), itr::Vector{Function}) │ @ Base ./abstractarray.jl:2774 │ [18] loadpkg(pkg::Base.PkgId) │ @ Requires ~/.julia/packages/Requires/Z8rfN/src/require.jl:27 │ [19] #invokelatest#2 │ @ ./essentials.jl:729 [inlined] │ [20] invokelatest │ @ ./essentials.jl:726 [inlined] │ [21] run_package_callbacks(modkey::Base.PkgId) │ @ Base ./loading.jl:869 │ [22] _require_prelocked(uuidkey::Base.PkgId) │ @ Base ./loading.jl:1206 │ [23] macro expansion │ @ ./loading.jl:1180 [inlined] │ [24] macro expansion │ @ ./lock.jl:223 [inlined] │ [25] require(into::Module, mod::Symbol) │ @ Base ./loading.jl:1144 │ [26] eval │ @ ./boot.jl:368 [inlined] │ [27] include_string(mapexpr::typeof(REPL.softscope), mod::Module, code::String, filename::String) │ @ Base ./loading.jl:1428 │ [28] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) │ @ Base ./essentials.jl:729 │ [29] invokelatest(::Any, ::Any, ::Vararg{Any}) │ @ Base ./essentials.jl:726 │ [30] inlineeval(m::Module, code::String, code_line::Int64, code_column::Int64, file::String; softscope::Bool) │ @ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.38.2/scripts/packages/VSCodeServer/src/eval.jl:233 │ [31] (::VSCodeServer.var"#66#70"{Bool, Bool, Bool, Module, String, Int64, Int64, String, VSCodeServer.ReplRunCodeRequestParams})() │ @ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.38.2/scripts/packages/VSCodeServer/src/eval.jl:157 │ [32] withpath(f::VSCodeServer.var"#66#70"{Bool, Bool, Bool, Module, String, Int64, Int64, String, VSCodeServer.ReplRunCodeRequestParams}, path::String) │ @ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.38.2/scripts/packages/VSCodeServer/src/repl.jl:249 │ [33] (::VSCodeServer.var"#65#69"{Bool, Bool, Bool, Module, String, Int64, Int64, String, VSCodeServer.ReplRunCodeRequestParams})() │ @ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.38.2/scripts/packages/VSCodeServer/src/eval.jl:155 │ [34] hideprompt(f::VSCodeServer.var"#65#69"{Bool, Bool, Bool, Module, String, Int64, Int64, String, VSCodeServer.ReplRunCodeRequestParams}) │ @ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.38.2/scripts/packages/VSCodeServer/src/repl.jl:38 │ [35] (::VSCodeServer.var"#64#68"{Bool, Bool, Bool, Module, String, Int64, Int64, String, VSCodeServer.ReplRunCodeRequestParams})() │ @ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.38.2/scripts/packages/VSCodeServer/src/eval.jl:126 │ [36] with_logstate(f::Function, logstate::Any) │ @ Base.CoreLogging ./logging.jl:511 │ [37] with_logger │ @ ./logging.jl:623 [inlined] │ [38] (::VSCodeServer.var"#63#67"{VSCodeServer.ReplRunCodeRequestParams})() │ @ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.38.2/scripts/packages/VSCodeServer/src/eval.jl:225 │ [39] #invokelatest#2 │ @ ./essentials.jl:729 [inlined] │ [40] invokelatest(::Any) │ @ Base ./essentials.jl:726 │ [41] macro expansion │ @ ~/.vscode/extensions/julialang.language-julia-1.38.2/scripts/packages/VSCodeServer/src/eval.jl:34 [inlined] │ [42] (::VSCodeServer.var"#61#62")() │ @ VSCodeServer ./task.jl:484 │ in expression starting at /Users/pitipatwongsittikan/.julia/packages/TopOpt/kFNXz/src/TopOptProblems/Visualization/makie.jl:4 └ @ Requires ~/.julia/packages/Requires/Z8rfN/src/require.jl:51 ┌ Warning: Error requiringGLMakiefromTopOpt.TrussTopOptProblems.TrussVisualization │ exception = │ LoadError: UndefVarError: RGBAf not defined │ Stacktrace: │ [1] include(mod::Module, _path::String) │ @ Base ./Base.jl:419 │ [2] include(x::String) │ @ TopOpt.TrussTopOptProblems.TrussVisualization ~/.julia/packages/TopOpt/kFNXz/src/TrussTopOptProblems/TrussVisualization/TrussVisualization.jl:1 │ [3] macro expansion │ @ ~/.julia/packages/Requires/Z8rfN/src/Requires.jl:40 [inlined] │ [4] top-level scope │ @ ~/.julia/packages/TopOpt/kFNXz/src/TrussTopOptProblems/TrussVisualization/TrussVisualization.jl:7 │ [5] eval(m::Module, e::Any) │ @ Core ./boot.jl:368 │ [6] top-level scope │ @ none:1 │ [7] eval │ @ ./boot.jl:368 [inlined] │ [8] eval │ @ ~/.julia/packages/TopOpt/kFNXz/src/TrussTopOptProblems/TrussVisualization/TrussVisualization.jl:1 [inlined] │ [9] (::TopOpt.TrussTopOptProblems.TrussVisualization.var"#3#6")() │ @ TopOpt.TrussTopOptProblems.TrussVisualization ~/.julia/packages/Requires/Z8rfN/src/require.jl:101 │ [10] macro expansion │ @ timing.jl:382 [inlined] │ [11] err(f::Any, listener::Module, modname::String, file::String, line::Any) │ @ Requires ~/.julia/packages/Requires/Z8rfN/src/require.jl:47 │ [12] (::TopOpt.TrussTopOptProblems.TrussVisualization.var"#2#5")() │ @ TopOpt.TrussTopOptProblems.TrussVisualization ~/.julia/packages/Requires/Z8rfN/src/require.jl:100 │ [13] withpath(f::Any, path::String) │ @ Requires ~/.julia/packages/Requires/Z8rfN/src/require.jl:37 │ [14] (::TopOpt.TrussTopOptProblems.TrussVisualization.var"#1#4")() │ @ TopOpt.TrussTopOptProblems.TrussVisualization ~/.julia/packages/Requires/Z8rfN/src/require.jl:99 │ [15] #invokelatest#2 │ @ ./essentials.jl:729 [inlined] │ [16] invokelatest │ @ ./essentials.jl:726 [inlined] │ [17] foreach(f::typeof(Base.invokelatest), itr::Vector{Function}) │ @ Base ./abstractarray.jl:2774 │ [18] loadpkg(pkg::Base.PkgId) │ @ Requires ~/.julia/packages/Requires/Z8rfN/src/require.jl:27 │ [19] #invokelatest#2 │ @ ./essentials.jl:729 [inlined] │ [20] invokelatest │ @ ./essentials.jl:726 [inlined] │ [21] run_package_callbacks(modkey::Base.PkgId) │ @ Base ./loading.jl:869 │ [22] _require_prelocked(uuidkey::Base.PkgId) │ @ Base ./loading.jl:1206 │ [23] macro expansion │ @ ./loading.jl:1180 [inlined] │ [24] macro expansion │ @ ./lock.jl:223 [inlined] │ [25] require(into::Module, mod::Symbol) │ @ Base ./loading.jl:1144 │ [26] eval │ @ ./boot.jl:368 [inlined] │ [27] include_string(mapexpr::typeof(REPL.softscope), mod::Module, code::String, filename::String) │ @ Base ./loading.jl:1428 │ [28] invokelatest(::Any, ::Any, ::Vararg{Any}; kwargs::Base.Pairs{Symbol, Union{}, Tuple{}, NamedTuple{(), Tuple{}}}) │ @ Base ./essentials.jl:729 │ [29] invokelatest(::Any, ::Any, ::Vararg{Any}) │ @ Base ./essentials.jl:726 │ [30] inlineeval(m::Module, code::String, code_line::Int64, code_column::Int64, file::String; softscope::Bool) │ @ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.38.2/scripts/packages/VSCodeServer/src/eval.jl:233 │ [31] (::VSCodeServer.var"#66#70"{Bool, Bool, Bool, Module, String, Int64, Int64, String, VSCodeServer.ReplRunCodeRequestParams})() │ @ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.38.2/scripts/packages/VSCodeServer/src/eval.jl:157 │ [32] withpath(f::VSCodeServer.var"#66#70"{Bool, Bool, Bool, Module, String, Int64, Int64, String, VSCodeServer.ReplRunCodeRequestParams}, path::String) │ @ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.38.2/scripts/packages/VSCodeServer/src/repl.jl:249 │ [33] (::VSCodeServer.var"#65#69"{Bool, Bool, Bool, Module, String, Int64, Int64, String, VSCodeServer.ReplRunCodeRequestParams})() │ @ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.38.2/scripts/packages/VSCodeServer/src/eval.jl:155 │ [34] hideprompt(f::VSCodeServer.var"#65#69"{Bool, Bool, Bool, Module, String, Int64, Int64, String, VSCodeServer.ReplRunCodeRequestParams}) │ @ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.38.2/scripts/packages/VSCodeServer/src/repl.jl:38 │ [35] (::VSCodeServer.var"#64#68"{Bool, Bool, Bool, Module, String, Int64, Int64, String, VSCodeServer.ReplRunCodeRequestParams})() │ @ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.38.2/scripts/packages/VSCodeServer/src/eval.jl:126 │ [36] with_logstate(f::Function, logstate::Any) │ @ Base.CoreLogging ./logging.jl:511 │ [37] with_logger │ @ ./logging.jl:623 [inlined] │ [38] (::VSCodeServer.var"#63#67"{VSCodeServer.ReplRunCodeRequestParams})() │ @ VSCodeServer ~/.vscode/extensions/julialang.language-julia-1.38.2/scripts/packages/VSCodeServer/src/eval.jl:225 │ [39] #invokelatest#2 │ @ ./essentials.jl:729 [inlined] │ [40] invokelatest(::Any) │ @ Base ./essentials.jl:726 │ [41] macro expansion │ @ ~/.vscode/extensions/julialang.language-julia-1.38.2/scripts/packages/VSCodeServer/src/eval.jl:34 [inlined] │ [42] (::VSCodeServer.var"#61#62")() │ @ VSCodeServer ./task.jl:484 │ in expression starting at /Users/pitipatwongsittikan/.julia/packages/TopOpt/kFNXz/src/TrussTopOptProblems/TrussVisualization/makie.jl:6 └ @ Requires ~/.julia/packages/Requires/Z8rfN/src/require.jl:51 WARNING: using GLMakie.Makie in module Main conflicts with an existing identifier.

mohamed82008 commented 1 year ago

Can you try installing GLMakie in an environment without TopOpt.jl and then run the tests using using Pkg; pkg"test GLMakie"? If this fails, then we can open an issue in the Makie.jl repository.