Adriano Meligrana
Adriano Meligrana
Hi @mofeing, there is another (better) workaround we were able to use not to precompile any plotting package, see the `ext` folder in the Agents.jl package: https://github.com/JuliaDynamics/Agents.jl/tree/main/ext, which I also...
ohh yeah there is also this other problem, since we access `X` from `Agents.__AGENT_GENERATOR__` we can access it if an agent with that name was defined in any module, even...
It should be built at runtime so that we can obtain the module location of the variable e.g. ```julia julia> module A export X struct X end end; julia> using...
and the book-keeping should be like ```julia julia> Agents.__AGENT_GENERATOR__ Dict{Symbol, Expr} with 8 entries: (Agents, :GraphAgent) => :(mutable struct GraphAgent :(mutable struct GridAgent{D} :(mutable struct X :(mutable struct X :(mutable...
We observe the same in our CI: https://github.com/JuliaDynamics/Agents.jl/actions/runs/11394559895/job/31727914202?pr=1091, seems like a Julia bug because everything worked fine in previous versions
I think the general issue is discussed at https://github.com/JuliaLang/julia/issues/56204, julia 1.11.1 introduced a breaking change which should be addressed from our side, I didn't have much time to understand really...
Tested our main with 1.11.2 and it now works fortunately, see https://github.com/JuliaDynamics/Agents.jl/actions/runs/11889177838/job/33814309543
This should be okay now
The last commit makes the benchmark not allocating, `@multiagent` is now 2x faster than a union on that for Julia 1.11
that seems good to me, but I'm skeptical about that making a big difference in compile times, I think it will take more than 1 release to improve this substantially,...