@@ -53,8 +53,10 @@ defmodule LiveDebugger.GenServers.CallbackTracingServer do
5353 # We trace it to refresh the components tree
5454 Dbg . tp ( { Phoenix.LiveView.Diff , :delete_component , 2 } , [ ] )
5555
56- # We need to get information when code reloads to properly trace modules
57- Dbg . tp ( { Mix.Tasks.Compile.Elixir , :run , 1 } , [ { :_ , [ ] , [ { :return_trace } ] } ] )
56+ if Application . get_env ( :live_debugger , :tracing_update_on_code_reload? , false ) do
57+ # We need to get information when code reloads to properly trace modules
58+ Dbg . tp ( { Mix.Tasks.Compile.Elixir , :run , 1 } , [ { :_ , [ ] , [ { :return_trace } ] } ] )
59+ end
5860
5961 { :noreply , state }
6062 end
@@ -64,11 +66,8 @@ defmodule LiveDebugger.GenServers.CallbackTracingServer do
6466 { :reply , :ok , state }
6567 end
6668
67- # This handler is heavy because of fetching state and we do not care for order because it is not displayed to user
68- # Because of that we do it asynchronously to speed up tracer a bit
69- # We do not persist this trace because it is not displayed to user
7069 @ spec handle_trace ( term ( ) , n :: integer ( ) ) :: integer ( )
71- defp handle_trace ( { _ , _ , :return_from , { Mix.Tasks.Compile.Elixir , _ , _ } , _ } , n ) do
70+ defp handle_trace ( { _ , _ , :return_from , { Mix.Tasks.Compile.Elixir , _ , _ } , { :ok , _ } } , n ) do
7271 Process . sleep ( 100 )
7372 add_live_modules_to_tracer ( )
7473 n
@@ -78,7 +77,17 @@ defmodule LiveDebugger.GenServers.CallbackTracingServer do
7877 n
7978 end
8079
81- defp handle_trace ( { _ , pid , _ , { Phoenix.LiveView.Diff , :delete_component , [ cid | _ ] = args } } , n ) do
80+ defp handle_trace ( { _ , _ , _ , { Mix.Tasks.Compile.Elixir , _ , _ } , _ } , n ) do
81+ n
82+ end
83+
84+ # This handler is heavy because of fetching state and we do not care for order because it is not displayed to user
85+ # Because of that we do it asynchronously to speed up tracer a bit
86+ # We do not persist this trace because it is not displayed to user
87+ defp handle_trace (
88+ { _ , pid , _ , { Phoenix.LiveView.Diff , :delete_component , [ cid | _ ] = args } } ,
89+ n
90+ ) do
8291 Task . start ( fn ->
8392 with cid <- % Phoenix.LiveComponent.CID { cid: cid } ,
8493 { :ok , % { socket: socket } } <- ChannelService . state ( pid ) ,
0 commit comments