# Wglmakie no longer working in Pluto

**URL:** https://discourse.julialang.org/t/wglmakie-no-longer-working-in-pluto/129182
**Category:** General Usage
**Tags:** pluto, makie, wglmakie
**Created:** [May 20, 2025, 4:16pm UTC](https://discourse.julialang.org/t/wglmakie-no-longer-working-in-pluto/129182 "2025-05-20T16:16:45Z")
**Posts on this page:** 9
**Page:** 1

<div class="post-metadata">

### Author: ![Christopher\_Fisher](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/christopher_fisher/32/26132_2.png) [@Christopher\_Fisher](https://discourse.julialang.org/u/Christopher_Fisher)
#### Post date: [May 20, 2025, 4:16pm UTC](https://discourse.julialang.org/t/wglmakie-no-longer-working-in-pluto/129182/1 "2025-05-20T16:16:45Z")

</div>

I am encountering an error with WGLMakie.jl in Pluto.jl. WGLMakie was working for quite some time until I updated my packages. Now it freezes and outputs the error message below in the terminal. I tried reverting back to the previous package versions, but I could not perfectly replicate it because I am not using Pluto’s native environment support (due to technical requirements for the project). I’m not sure whether a dependency of a dependency is causing the error. Any help would be appreciated

**Error**

> **Summary**
>
> ```julia
> Warning: Processing message failed for unknown reason:
> │ parentbody =
> │ Dict{Any, Any} with 3 entries:
> │ "payload" => Dict{Any, Any}("mouseup"=>0)
> │ "msg_type" => "0"
> │ "id" => "34697"
> │ exception =
> │ KeyError: key "client_id" not found
> │ Stacktrace:
> │ [1] getindex(h::Dict{Any, Any}, key::String)
> │ @ Base ./dict.jl:477
> │ [2] (::Pluto.var"#384#395"{Pluto.ServerSession})(clientstream::HTTP.WebSockets.WebSocket)
> │ @ Pluto ~/.julia/packages/Pluto/Bzt83/src/webserver/WebServer.jl:227
> │ [3] upgrade(f::Pluto.var"#384#395"{Pluto.ServerSession}, http::HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.Connections.Connection{Sockets.TCPSocket}}; suppress_close_error::Bool, maxframesize::Int64, maxfragmentation::Int64, nagle::Bool, quickack::Bool, kw::@Kwargs{})
> │ @ HTTP.WebSockets ~/.julia/packages/HTTP/MIUdD/src/WebSockets.jl:458
> │ [4] upgrade
> │ @ ~/.julia/packages/HTTP/MIUdD/src/WebSockets.jl:427 [inlined]
> │ [5] (::Pluto.var"#383#393"{Pluto.ServerSession, Pluto.var"#285#287"{Pluto.var"#288#290"{HTTP.Handlers.Router{typeof(Pluto.default_404_response), typeof(HTTP.Handlers.default405), Nothing}}, Pluto.ServerSession}})(http::HTTP.Streams.Stream{HTTP.Messages.Request, HTTP.Connections.Connection{Sockets.TCPSocket}})
> │ @ Pluto ~/.julia/packages/Pluto/Bzt83/src/webserver/WebServer.jl:204
> │ [6] #invokelatest#2
> │ @ ./essentials.jl:1055 [inlined]
> │ [7] invokelatest
> │ @ ./essentials.jl:1052 [inlined]
> │ [8] handle_connection(f::Function, c::HTTP.Connections.Connection{Sockets.TCPSocket}, listener::HTTP.Servers.Listener{Nothing, Sockets.TCPServer}, readtimeout::Int64, access_log::Nothing, verbose::Int64)
> │ @ HTTP.Servers ~/.julia/packages/HTTP/MIUdD/src/Servers.jl:469
> │ [9] (::HTTP.Servers.var"#16#17"{Pluto.var"#383#393"{Pluto.ServerSession, Pluto.var"#285#287"{Pluto.var"#288#290"{HTTP.Handlers.Router{typeof(Pluto.default_404_response), typeof(HTTP.Handlers.default405), Nothing}}, Pluto.ServerSession}}, HTTP.Servers.Listener{Nothing, Sockets.TCPServer}, Set{HTTP.Connections.Connection}, Int64, Nothing, ReentrantLock, Int64, Base.Semaphore, HTTP.Connections.Connection{Sockets.TCPSocket}})()
> │ @ HTTP.Servers ~/.julia/packages/HTTP/MIUdD/src/Servers.jl:401
> └ @ Pluto ~/.julia/packages/Pluto/Bzt83/src/webserver/WebServer.jl:236
> 
> ```

**Code**

> **Summary**
>
> ```julia
> begin
> using Agents, WGLMakie
> using AgentsExampleZoo
> 	
> model = AgentsExampleZoo.daisyworld(;
> solar_luminosity = 1.0, solar_change = 0.0, scenario = :change
> )
> model
> end
> 
> begin
> using Statistics: mean
> black(a) = a.breed == :black
> white(a) = a.breed == :white
> adata = [(black, count), (white, count)]
> temperature(model) = mean(model.temperature)
> mdata = [temperature, :solar_luminosity]
> daisycolor(a) = a.breed
> agent_size = 20
> agent_marker = '✿'
> heatarray = :temperature
> heatkwargs = (colorrange = (-20, 60), colormap = :thermal)
> agentsplotkwargs = (strokewidth = 1.0,) # add stroke around each agent
> plotkwargs = (;
> agent_color = daisycolor, agent_size, agent_marker,
> agentsplotkwargs = (strokewidth = 1.0,),
> heatarray, heatkwargs
> )
> params = Dict(
> :surface_albedo => 0:0.01:1,
> :solar_change => -0.1:0.01:0.1,
> )
> fig, abmobs = abmexploration(model;
> params, plotkwargs..., adata, alabels = ["Black daisys", "White daisys"],
> mdata, mlabels = ["T", "L"]
> )
> fig
> end
> 
> ```

**Version Info**

```julia
[46ada45e] Agents v6.2.10
[88acaeb2] AgentsExampleZoo v0.1.2
[10745b16] Statistics v1.11.1
[276b4fcb] WGLMakie v0.11.6
[c3e4b0f8] Pluto v0.20.8
Julia 1.11.5

```

---

<div class="post-metadata">

### Author: ![Christopher\_Fisher](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/christopher_fisher/32/26132_2.png) [@Christopher\_Fisher](https://discourse.julialang.org/u/Christopher_Fisher)
#### Post date: [May 20, 2025, 5:12pm UTC](https://discourse.julialang.org/t/wglmakie-no-longer-working-in-pluto/129182/2 "2025-05-20T17:12:24Z")

</div>

I downgraded Bonito.jl to Bonito v4.0.3 and it works now. Does anyone know whether Bonito is the best place to file an issue?

---

<div class="post-metadata">

### Author: ![Christopher\_Fisher](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/christopher_fisher/32/26132_2.png) [@Christopher\_Fisher](https://discourse.julialang.org/u/Christopher_Fisher)
#### Post date: [May 20, 2025, 6:30pm UTC](https://discourse.julialang.org/t/wglmakie-no-longer-working-in-pluto/129182/3 "2025-05-20T18:30:14Z")

</div>

I opened an issue at [Bonito.jl](https://github.com/SimonDanisch/Bonito.jl/issues/318). If its the wrong place, it will get transferred.

---

<div class="post-metadata">

### Author: ![filchristou](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/filchristou/32/26760_2.png) [@filchristou](https://discourse.julialang.org/u/filchristou)
#### Post date: [May 21, 2025, 9:21am UTC](https://discourse.julialang.org/t/wglmakie-no-longer-working-in-pluto/129182/4 "2025-05-21T09:21:38Z")

</div>

As I mentioned in a [julip chat](https://julialang.zulipchat.com/#narrow/channel/243342-pluto.2Ejl/topic/wglmakie.20interactivity.20broken.20.3F/with/519472925) I get the same error with Pluto v0.20.8, WGLMakie v0.11.6, and julia 1.11.5 both at firefox and in chromium

---

<div class="post-metadata">

### Author: ![Juan\_Sebastian\_Pared](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/juan_sebastian_pared/32/214374_2.png) [@Juan\_Sebastian\_Pared](https://discourse.julialang.org/u/Juan_Sebastian_Pared)
#### Post date: [March 3, 2026, 5:09am UTC](https://discourse.julialang.org/t/wglmakie-no-longer-working-in-pluto/129182/5 "2026-03-03T05:09:35Z")

</div>

Hi, I am new in the communitie and I tried to use Pluto with WGLMakie for an interactive streamplot, beacuse the PlutoUI widgets were not fast enough so I used the WGLMakie, anyway the code with the WGLMakie sliders work only when I do one thing, that is creating a CairoMakie figure and after all cells finish, then, I can introduce WGLMakie and interactivitie works, if I run all cells at once it will make a static graphic .  
I am using the version 1.12.5 of Julia and the most recent versions of Makie and Pluto

---

<div class="post-metadata">

### Author: ![Christopher\_Fisher](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/christopher_fisher/32/26132_2.png) [@Christopher\_Fisher](https://discourse.julialang.org/u/Christopher_Fisher)
#### Post date: [March 3, 2026, 9:08am UTC](https://discourse.julialang.org/t/wglmakie-no-longer-working-in-pluto/129182/6 "2026-03-03T09:08:05Z")

</div>

Hi Juan. Welcome to the community! The problem you described seems a bit different. You might get more traction by opening a new thread and including a minimum working example that illustrates the problem you encountered.

---

<div class="post-metadata">

### Author: ![sdanisch](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/sdanisch/32/1406_2.png) [@sdanisch](https://discourse.julialang.org/u/sdanisch)
#### Post date: [March 3, 2026, 9:14am UTC](https://discourse.julialang.org/t/wglmakie-no-longer-working-in-pluto/129182/7 "2026-03-03T09:14:00Z")

</div>

Maybe thats good use case for [https://bonitobook.org](https://bonitobook.org) ?

---

<div class="post-metadata">

### Author: ![Juan\_Sebastian\_Pared](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/juan_sebastian_pared/32/214374_2.png) [@Juan\_Sebastian\_Pared](https://discourse.julialang.org/u/Juan_Sebastian_Pared)
#### Post date: [March 3, 2026, 4:22pm UTC](https://discourse.julialang.org/t/wglmakie-no-longer-working-in-pluto/129182/8 "2026-03-03T16:22:21Z")

</div>

I just tried and worked! there are a bunch of things keeping me away from using it extensively, Where do I leave my suggestions?

---

<div class="post-metadata">

### Author: ![sdanisch](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/sdanisch/32/1406_2.png) [@sdanisch](https://discourse.julialang.org/u/sdanisch)
#### Post date: [March 3, 2026, 4:24pm UTC](https://discourse.julialang.org/t/wglmakie-no-longer-working-in-pluto/129182/9 "2026-03-03T16:24:29Z")

</div>

Feel free to open an issue!
