Skip to content

LiveDebugger crashes for LiveView v0.20.0 and v0.20.1 #399

Description

@kraleppa

As in title. This bug was reported via elixirforum with following error message

** (UndefinedFunctionError) function Phoenix.LiveView.AsyncResult.ok/1 is undefined or private
    (phoenix_live_view 0.20.0) Phoenix.LiveView.AsyncResult.ok(%LiveDebugger.Structs.LvProcess{socket_id: "phx-GEDkZRldgZITPj0B", root_pid: #PID<0.72523.0>, parent_pid: nil, pid: #PID<0.72523.0>, transport_pid: #PID<0.72479.0>, module: UserDetails, nested?: false, debugger?: false, embedded?: false})
    (live_debugger 0.2.2) lib/live_debugger_web/live/channel_dashboard_live.ex:122: LiveDebuggerWeb.ChannelDashboardLive.handle_async/3
    (phoenix_live_view 0.20.0) lib/phoenix_live_view/async.ex:132: Phoenix.LiveView.Async.handle_kind/5
    (phoenix_live_view 0.20.0) lib/phoenix_live_view/channel.ex:256: anonymous fn/7 in Phoenix.LiveView.Channel.handle_info/2
    (phoenix_live_view 0.20.0) lib/phoenix_live_view/channel.ex:1364: Phoenix.LiveView.Channel.write_socket/4
    (phoenix_live_view 0.20.0) lib/phoenix_live_view/channel.ex:255: Phoenix.LiveView.Channel.handle_info/2
    (stdlib 6.0.1) gen_server.erl:2173: :gen_server.try_handle_info/3
    (stdlib 6.0.1) gen_server.erl:2261: :gen_server.handle_msg/6
    (stdlib 6.0.1) proc_lib.erl:329: :proc_lib.init_p_do_apply/3
Last message: {:phoenix, :async_result, {:start, {#Reference<0.0.9301507.1111337683.3921739777.102153>, nil, :fetch_lv_process, {:ok, %LiveDebugger.Structs.LvProcess{socket_id: "phx-GEDkZRldgZITPj0B", root_pid: #PID<0.72523.0>, parent_pid: nil, pid: #PID<0.72523.0>, transport_pid: #PID<0.72479.0>, module: UserDetails, nested?: false, debugger?: false, embedded?: false}}}}}
State: %{socket: #Phoenix.LiveView.Socket<id: "phx-GEDkaHNPIiXJQj4B", endpoint: LiveDebuggerWeb.Endpoint, view: LiveDebuggerWeb.ChannelDashboardLive, parent_pid: nil, root_pid: #PID<0.72668.0>, router: LiveDebuggerWeb.Router, assigns: %{url: "/0.72479.0/phx-GEDkZRldgZITPj0B", flash: %{}, socket_id: "phx-GEDkZRldgZITPj0B", __changed__: %{}, live_action: nil, node_id: nil, lv_process: %Phoenix.LiveView.AsyncResult{ok?: false, loading: true, failed: nil, result: nil}}, transport_pid: #PID<0.72574.0>, ...>, components: {%{}, %{}, 1}, serializer: Phoenix.Socket.V2.JSONSerializer, topic: "lv:phx-GEDkaHNPIiXJQj4B", join_ref: "62", upload_pids: %{}, upload_names: %{}}

TL;DR
We are using here function AsyncResult.ok/1 which was introduced in LiveView v0.20.2

It'd be probably good to check if we are using this function anywhere else

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

Fields

No fields configured for Bug.

Projects

Status
Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions