From da10678e89597095b8cbd5e0bf5c2c81d71a0f9b Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 11:09:46 +0100 Subject: [PATCH 01/18] Fixed module discovery --- lib/live_debugger/services/module_discovery.ex | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/live_debugger/services/module_discovery.ex b/lib/live_debugger/services/module_discovery.ex index 4894bef5..55770205 100644 --- a/lib/live_debugger/services/module_discovery.ex +++ b/lib/live_debugger/services/module_discovery.ex @@ -17,6 +17,7 @@ defmodule LiveDebugger.Services.ModuleDiscovery do defp find_modules_by_behaviour(loaded_modules, behaviour) do loaded_modules |> Enum.map(fn {module, _} -> module end) + |> Enum.reject(&debugger?/1) |> Enum.filter(&loaded?/1) |> Enum.filter(&behaviour?(&1, behaviour)) end @@ -27,4 +28,10 @@ defmodule LiveDebugger.Services.ModuleDiscovery do module_behaviours = module.module_info(:attributes)[:behaviour] || [] Enum.member?(module_behaviours, behaviour_to_find) end + + defp debugger?(module) do + module + |> Atom.to_string() + |> String.starts_with?("LiveDebugger.") + end end From d2a0e0069d21f4ad161819af401cbed4fb350b08 Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 11:14:36 +0100 Subject: [PATCH 02/18] Added CI yaml --- .github/workflows/elixir-ci.yaml | 38 ++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 .github/workflows/elixir-ci.yaml diff --git a/.github/workflows/elixir-ci.yaml b/.github/workflows/elixir-ci.yaml new file mode 100644 index 00000000..ebaa7cf9 --- /dev/null +++ b/.github/workflows/elixir-ci.yaml @@ -0,0 +1,38 @@ +# This workflow uses actions that are not certified by GitHub. +# They are provided by a third-party and are governed by +# separate terms of service, privacy policy, and support +# documentation. + +name: Elixir CI + +on: + push: + branches: ["main"] + pull_request: + branches: ["main"] + +permissions: + contents: read + +jobs: + build: + name: Build and test + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + - name: Set up Elixir + uses: erlef/setup-beam@61e01a43a562a89bfc54c7f9a378ff67b03e4a21 # v1.16.0 + with: + elixir-version: "1.17.3" # [Required] Define the Elixir version + otp-version: "27.1.2" # [Required] Define the Erlang/OTP version + - name: Restore dependencies cache + uses: actions/cache@v3 + with: + path: deps + key: ${{ runner.os }}-mix-${{ hashFiles('**/mix.lock') }} + restore-keys: ${{ runner.os }}-mix- + - name: Install dependencies + run: mix deps.get + - name: Run tests + run: mix test From 39fb66307158dec033f3df242593ec9e9de4d18c Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 11:17:46 +0100 Subject: [PATCH 03/18] Mix setup instead of mix deps.get --- .github/workflows/elixir-ci.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/elixir-ci.yaml b/.github/workflows/elixir-ci.yaml index ebaa7cf9..9975c87d 100644 --- a/.github/workflows/elixir-ci.yaml +++ b/.github/workflows/elixir-ci.yaml @@ -32,7 +32,7 @@ jobs: path: deps key: ${{ runner.os }}-mix-${{ hashFiles('**/mix.lock') }} restore-keys: ${{ runner.os }}-mix- - - name: Install dependencies - run: mix deps.get + - name: Setup project + run: mix setup - name: Run tests run: mix test From 8ef1ed9edc02c00b28f52b832bd74da304f6e565 Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 11:23:01 +0100 Subject: [PATCH 04/18] Fixed debugger filter --- lib/live_debugger/services/module_discovery.ex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/live_debugger/services/module_discovery.ex b/lib/live_debugger/services/module_discovery.ex index 55770205..2ea09150 100644 --- a/lib/live_debugger/services/module_discovery.ex +++ b/lib/live_debugger/services/module_discovery.ex @@ -17,9 +17,9 @@ defmodule LiveDebugger.Services.ModuleDiscovery do defp find_modules_by_behaviour(loaded_modules, behaviour) do loaded_modules |> Enum.map(fn {module, _} -> module end) - |> Enum.reject(&debugger?/1) |> Enum.filter(&loaded?/1) |> Enum.filter(&behaviour?(&1, behaviour)) + |> Enum.reject(&debugger?/1) end defp loaded?(module), do: Code.ensure_loaded?(module) @@ -32,6 +32,6 @@ defmodule LiveDebugger.Services.ModuleDiscovery do defp debugger?(module) do module |> Atom.to_string() - |> String.starts_with?("LiveDebugger.") + |> String.starts_with?("Elixir.LiveDebugger.") end end From 50f56423bffc460848091019e3a3bc8d87145ec9 Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 11:25:44 +0100 Subject: [PATCH 05/18] Extended condition --- lib/live_debugger/services/module_discovery.ex | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/live_debugger/services/module_discovery.ex b/lib/live_debugger/services/module_discovery.ex index 2ea09150..71e6a9c8 100644 --- a/lib/live_debugger/services/module_discovery.ex +++ b/lib/live_debugger/services/module_discovery.ex @@ -30,8 +30,9 @@ defmodule LiveDebugger.Services.ModuleDiscovery do end defp debugger?(module) do - module - |> Atom.to_string() - |> String.starts_with?("Elixir.LiveDebugger.") + stringified_module = Atom.to_string(module) + + String.starts_with?(stringified_module, "LiveDebugger.") or + String.starts_with?(stringified_module, "Elixir.LiveDebugger.") end end From 1e19612c70d95cb58ffb2d77d2b299eddde7bc03 Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 11:33:35 +0100 Subject: [PATCH 06/18] Adjusted test --- test/services/module_discovery_test.exs | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/test/services/module_discovery_test.exs b/test/services/module_discovery_test.exs index d041e022..15692b44 100644 --- a/test/services/module_discovery_test.exs +++ b/test/services/module_discovery_test.exs @@ -23,11 +23,14 @@ defmodule LiveDebugger.Services.ModuleDiscoveryTest do Macro.Env.location(__ENV__) ) - assert %{ - live_views: [LiveDebuggerTest.TestView], - live_components: [LiveDebuggerTest.TestComponent] - } = - ModuleDiscovery.find_live_modules() + %{ + live_views: live_views, + live_components: live_components + } = + ModuleDiscovery.find_live_modules() + + assert Enum.any?(live_views, &(&1 == LiveDebuggerTest.TestView)) + assert Enum.any?(live_components, &(&1 == LiveDebuggerTest.TestComponent)) end end From 39b2484779e15a62a499430d4a5ad02c6103cd3d Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 11:33:57 +0100 Subject: [PATCH 07/18] Format --- test/services/module_discovery_test.exs | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/test/services/module_discovery_test.exs b/test/services/module_discovery_test.exs index 15692b44..5fe52591 100644 --- a/test/services/module_discovery_test.exs +++ b/test/services/module_discovery_test.exs @@ -23,10 +23,7 @@ defmodule LiveDebugger.Services.ModuleDiscoveryTest do Macro.Env.location(__ENV__) ) - %{ - live_views: live_views, - live_components: live_components - } = + %{live_views: live_views, live_components: live_components} = ModuleDiscovery.find_live_modules() assert Enum.any?(live_views, &(&1 == LiveDebuggerTest.TestView)) From fa80e6865de99955e737c11070353aaae50c5b5e Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 11:38:55 +0100 Subject: [PATCH 08/18] Added new condition to the test --- test/services/module_discovery_test.exs | 1 + 1 file changed, 1 insertion(+) diff --git a/test/services/module_discovery_test.exs b/test/services/module_discovery_test.exs index 5fe52591..7cd805c5 100644 --- a/test/services/module_discovery_test.exs +++ b/test/services/module_discovery_test.exs @@ -28,6 +28,7 @@ defmodule LiveDebugger.Services.ModuleDiscoveryTest do assert Enum.any?(live_views, &(&1 == LiveDebuggerTest.TestView)) assert Enum.any?(live_components, &(&1 == LiveDebuggerTest.TestComponent)) + refute Enum.any?(live_views, &(&1 == LiveDebuggerTest.OtherModule)) end end From 72e216f4c0aaaccdf6387ca5334416c564bdd6a5 Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 11:40:35 +0100 Subject: [PATCH 09/18] Added format check --- .github/workflows/elixir-ci.yaml | 3 +++ lib/live_debugger/services/callback_tracer.ex | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/elixir-ci.yaml b/.github/workflows/elixir-ci.yaml index 9975c87d..af23fdd6 100644 --- a/.github/workflows/elixir-ci.yaml +++ b/.github/workflows/elixir-ci.yaml @@ -32,7 +32,10 @@ jobs: path: deps key: ${{ runner.os }}-mix-${{ hashFiles('**/mix.lock') }} restore-keys: ${{ runner.os }}-mix- + - name: Setup project run: mix setup + - name: Check formatting + run: mix format --check-formatted - name: Run tests run: mix test diff --git a/lib/live_debugger/services/callback_tracer.ex b/lib/live_debugger/services/callback_tracer.ex index 9c3b818f..6201d03d 100644 --- a/lib/live_debugger/services/callback_tracer.ex +++ b/lib/live_debugger/services/callback_tracer.ex @@ -35,7 +35,7 @@ defmodule LiveDebugger.Services.CallbackTracer do :dbg.p(monitored_pid, :c) ModuleDiscovery.find_live_modules() - |> CallbackUtils.tracing_callbacks() + |> CallbackUtils.tracing_callbacks() |> Enum.map(fn mfa -> :dbg.tp(mfa, []) end) end) From 9aef108967dfc5a313501e5845229b08f953978a Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 11:42:05 +0100 Subject: [PATCH 10/18] Fixed formatting --- lib/live_debugger/services/callback_tracer.ex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/live_debugger/services/callback_tracer.ex b/lib/live_debugger/services/callback_tracer.ex index 6201d03d..9c3b818f 100644 --- a/lib/live_debugger/services/callback_tracer.ex +++ b/lib/live_debugger/services/callback_tracer.ex @@ -35,7 +35,7 @@ defmodule LiveDebugger.Services.CallbackTracer do :dbg.p(monitored_pid, :c) ModuleDiscovery.find_live_modules() - |> CallbackUtils.tracing_callbacks() + |> CallbackUtils.tracing_callbacks() |> Enum.map(fn mfa -> :dbg.tp(mfa, []) end) end) From 83ded56f6302eb046479552200dd1284cfb20caa Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 11:56:45 +0100 Subject: [PATCH 11/18] Added credo + refactor --- lib/live_debugger.ex | 4 ++++ lib/live_debugger/components/tooltip.ex | 4 ++++ lib/live_debugger/components/tree.ex | 4 ++++ lib/live_debugger/layout.ex | 1 - .../live_views/socket_dashboard_live.ex | 21 +++++++------------ .../services/channel_state_scraper.ex | 4 ++++ .../services/live_view_scraper.ex | 2 ++ .../services/module_discovery.ex | 6 +++++- lib/live_debugger/services/tree_node.ex | 2 +- .../services/tree_node/live_component.ex | 2 ++ lib/live_debugger/utils/callbacks.ex | 4 ++++ lib/live_debugger_web.ex | 4 ++++ mix.exs | 3 ++- mix.lock | 2 ++ test/support/process_case.ex | 2 ++ 15 files changed, 47 insertions(+), 18 deletions(-) diff --git a/lib/live_debugger.ex b/lib/live_debugger.ex index ef548c59..6c0a5feb 100644 --- a/lib/live_debugger.ex +++ b/lib/live_debugger.ex @@ -1,4 +1,8 @@ defmodule LiveDebugger do + @moduledoc """ + Debugger for LiveView applications. + """ + use Phoenix.Component attr(:redirect_url, :string, required: true, doc: "The URL of the debugger, e.g. `/dbg`") diff --git a/lib/live_debugger/components/tooltip.ex b/lib/live_debugger/components/tooltip.ex index 9c860d3b..e971ac74 100644 --- a/lib/live_debugger/components/tooltip.ex +++ b/lib/live_debugger/components/tooltip.ex @@ -1,4 +1,8 @@ defmodule LiveDebugger.Components.Tooltip do + @moduledoc """ + This module provides a Tooltip component. + """ + use LiveDebuggerWeb, :component @doc """ diff --git a/lib/live_debugger/components/tree.ex b/lib/live_debugger/components/tree.ex index 73240411..fe9dbafb 100644 --- a/lib/live_debugger/components/tree.ex +++ b/lib/live_debugger/components/tree.ex @@ -1,4 +1,8 @@ defmodule LiveDebugger.Components.Tree do + @moduledoc """ + Tree component which show nested tree of live view and live components. + """ + use LiveDebuggerWeb, :component alias LiveDebugger.Components.Collapsible diff --git a/lib/live_debugger/layout.ex b/lib/live_debugger/layout.ex index 63a3adb5..1307452e 100644 --- a/lib/live_debugger/layout.ex +++ b/lib/live_debugger/layout.ex @@ -49,7 +49,6 @@ defmodule LiveDebugger.Layout do """ end - # TODO: Remove this and the conditional on Phoenix v1.7+ @compile {:no_warn_undefined, Phoenix.VerifiedRoutes} defp asset_path(conn, asset) when asset in [:css, :js] do diff --git a/lib/live_debugger/live_views/socket_dashboard_live.ex b/lib/live_debugger/live_views/socket_dashboard_live.ex index a652434c..64c20e64 100644 --- a/lib/live_debugger/live_views/socket_dashboard_live.ex +++ b/lib/live_debugger/live_views/socket_dashboard_live.ex @@ -19,20 +19,12 @@ defmodule LiveDebugger.LiveViews.SocketDashboardLive do def render(assigns) do ~H""" <.loading_variant :if={@debugged_pid.status == :loading} /> - -
- <.live_component - :if={@debugged_pid.status == :ok} - id="sidebar" - module={LiveDebugger.LiveComponents.Sidebar} - pid={@debugged_pid.result} - socket_id={@socket_id} - /> -
- <.not_found_component :if={@debugged_pid.status == :not_found} /> - <.error_component :if={@debugged_pid.status == :error} /> -
-
+ <.not_found_component :if={@debugged_pid.status == :not_found} /> + <.error_component :if={@debugged_pid.status == :error} /> + <.container :if={@debugged_pid.status == :ok} max_width="full"> +
Monitored socket: {@socket_id}
+
Debugged PID: {inspect(@debugged_pid.result)}
+ """ end @@ -124,6 +116,7 @@ defmodule LiveDebugger.LiveViews.SocketDashboardLive do defp assign_async_debugged_pid(socket) do socket_id = socket.assigns.socket_id + # credo:disable-for-lines:9 socket |> assign(:debugged_pid, %{status: :loading}) |> start_async(:fetch_debugged_pid, fn -> diff --git a/lib/live_debugger/services/channel_state_scraper.ex b/lib/live_debugger/services/channel_state_scraper.ex index 8244cbd2..458b045a 100644 --- a/lib/live_debugger/services/channel_state_scraper.ex +++ b/lib/live_debugger/services/channel_state_scraper.ex @@ -1,4 +1,8 @@ defmodule LiveDebugger.Services.ChannelStateScraper do + @moduledoc """ + This module provides functions that performs operation on state of LiveView channel. + """ + alias LiveDebugger.Services.TreeNode alias LiveDebugger.Services.LiveViewScraper diff --git a/lib/live_debugger/services/live_view_scraper.ex b/lib/live_debugger/services/live_view_scraper.ex index c1672ea3..25a627da 100644 --- a/lib/live_debugger/services/live_view_scraper.ex +++ b/lib/live_debugger/services/live_view_scraper.ex @@ -1,4 +1,6 @@ defmodule LiveDebugger.Services.LiveViewScraper do + @moduledoc false + @callback channel_state_from_pid(pid :: pid()) :: {:ok, map()} | {:error, term()} @callback pid_by_socket_id(socket_id :: String.t()) :: pid() | nil @callback pids() :: [pid()] diff --git a/lib/live_debugger/services/module_discovery.ex b/lib/live_debugger/services/module_discovery.ex index 71e6a9c8..fdac2d3c 100644 --- a/lib/live_debugger/services/module_discovery.ex +++ b/lib/live_debugger/services/module_discovery.ex @@ -1,4 +1,8 @@ defmodule LiveDebugger.Services.ModuleDiscovery do + @moduledoc """ + This module provides functions to discover LiveViews and LiveComponents in the current application. + """ + @live_view_behaviour Phoenix.LiveView @live_component_behaviour Phoenix.LiveComponent @@ -18,8 +22,8 @@ defmodule LiveDebugger.Services.ModuleDiscovery do loaded_modules |> Enum.map(fn {module, _} -> module end) |> Enum.filter(&loaded?/1) - |> Enum.filter(&behaviour?(&1, behaviour)) |> Enum.reject(&debugger?/1) + |> Enum.filter(&behaviour?(&1, behaviour)) end defp loaded?(module), do: Code.ensure_loaded?(module) diff --git a/lib/live_debugger/services/tree_node.ex b/lib/live_debugger/services/tree_node.ex index c187cf76..8c04eae2 100644 --- a/lib/live_debugger/services/tree_node.ex +++ b/lib/live_debugger/services/tree_node.ex @@ -1,5 +1,5 @@ defmodule LiveDebugger.Services.TreeNode do - @doc """ + @moduledoc """ This module provides functions to work with the tree of LiveView and LiveComponent nodes (TreeNodes). """ alias LiveDebugger.Services.TreeNode.LiveView, as: LiveViewNode diff --git a/lib/live_debugger/services/tree_node/live_component.ex b/lib/live_debugger/services/tree_node/live_component.ex index 911a9120..4950136d 100644 --- a/lib/live_debugger/services/tree_node/live_component.ex +++ b/lib/live_debugger/services/tree_node/live_component.ex @@ -1,4 +1,6 @@ defmodule LiveDebugger.Services.TreeNode.LiveComponent do + @moduledoc false + defstruct [:id, :cid, :module, :assigns, :children] @type cid() :: integer() | nil diff --git a/lib/live_debugger/utils/callbacks.ex b/lib/live_debugger/utils/callbacks.ex index 9991b809..8479f491 100644 --- a/lib/live_debugger/utils/callbacks.ex +++ b/lib/live_debugger/utils/callbacks.ex @@ -1,4 +1,8 @@ defmodule LiveDebugger.Utils.Callbacks do + @moduledoc """ + This module provides functions to generate a list of callbacks for LiveViews and LiveComponents. + """ + alias LiveDebugger.Services.ModuleDiscovery @common_callbacks [ diff --git a/lib/live_debugger_web.ex b/lib/live_debugger_web.ex index 1e2e3b68..c65e2678 100644 --- a/lib/live_debugger_web.ex +++ b/lib/live_debugger_web.ex @@ -1,4 +1,6 @@ defmodule LiveDebuggerWeb do + @moduledoc false + def live_view do quote do use Phoenix.LiveView, @@ -51,6 +53,8 @@ defmodule LiveDebuggerWeb do end defmodule LiveDebuggerWeb.Helpers do + @moduledoc false + def ok(socket), do: {:ok, socket} def noreply(socket), do: {:noreply, socket} end diff --git a/mix.exs b/mix.exs index 81c61669..94ef46cf 100644 --- a/mix.exs +++ b/mix.exs @@ -49,7 +49,8 @@ defmodule LiveDebugger.MixProject do {:phoenix_live_reload, "~> 1.5", only: :dev}, {:esbuild, "~> 0.7", only: :dev}, {:tailwind, "~> 0.2", only: :dev}, - {:mox, "~> 1.2", only: :test} + {:mox, "~> 1.2", only: :test}, + {:credo, "~> 1.7", only: [:dev, :test], runtime: false} ] end end diff --git a/mix.lock b/mix.lock index 5d2bc48e..034e2057 100644 --- a/mix.lock +++ b/mix.lock @@ -1,6 +1,8 @@ %{ "bandit": {:hex, :bandit, "1.6.1", "9e01b93d72ddc21d8c576a704949e86ee6cde7d11270a1d3073787876527a48f", [:mix], [{:hpax, "~> 1.0", [hex: :hpax, repo: "hexpm", optional: false]}, {:plug, "~> 1.14", [hex: :plug, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}, {:thousand_island, "~> 1.0", [hex: :thousand_island, repo: "hexpm", optional: false]}, {:websock, "~> 0.5", [hex: :websock, repo: "hexpm", optional: false]}], "hexpm", "5a904bf010ea24b67979835e0507688e31ac873d4ffc8ed0e5413e8d77455031"}, + "bunt": {:hex, :bunt, "1.0.0", "081c2c665f086849e6d57900292b3a161727ab40431219529f13c4ddcf3e7a44", [:mix], [], "hexpm", "dc5f86aa08a5f6fa6b8096f0735c4e76d54ae5c9fa2c143e5a1fc7c1cd9bb6b5"}, "castore": {:hex, :castore, "1.0.10", "43bbeeac820f16c89f79721af1b3e092399b3a1ecc8df1a472738fd853574911", [:mix], [], "hexpm", "1b0b7ea14d889d9ea21202c43a4fa015eb913021cb535e8ed91946f4b77a8848"}, + "credo": {:hex, :credo, "1.7.11", "d3e805f7ddf6c9c854fd36f089649d7cf6ba74c42bc3795d587814e3c9847102", [:mix], [{:bunt, "~> 0.2.1 or ~> 1.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:file_system, "~> 0.2 or ~> 1.0", [hex: :file_system, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "56826b4306843253a66e47ae45e98e7d284ee1f95d53d1612bb483f88a8cf219"}, "decimal": {:hex, :decimal, "2.2.0", "df3d06bb9517e302b1bd265c1e7f16cda51547ad9d99892049340841f3e15836", [:mix], [], "hexpm", "af8daf87384b51b7e611fb1a1f2c4d4876b65ef968fa8bd3adf44cff401c7f21"}, "ecto": {:hex, :ecto, "3.12.5", "4a312960ce612e17337e7cefcf9be45b95a3be6b36b6f94dfb3d8c361d631866", [:mix], [{:decimal, "~> 2.0", [hex: :decimal, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "6eb18e80bef8bb57e17f5a7f068a1719fbda384d40fc37acb8eb8aeca493b6ea"}, "esbuild": {:hex, :esbuild, "0.8.2", "5f379dfa383ef482b738e7771daf238b2d1cfb0222bef9d3b20d4c8f06c7a7ac", [:mix], [{:castore, ">= 0.0.0", [hex: :castore, repo: "hexpm", optional: false]}, {:jason, "~> 1.4", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "558a8a08ed78eb820efbfda1de196569d8bfa9b51e8371a1934fbb31345feda7"}, diff --git a/test/support/process_case.ex b/test/support/process_case.ex index 37e02649..28868cf6 100644 --- a/test/support/process_case.ex +++ b/test/support/process_case.ex @@ -1,4 +1,6 @@ defmodule LiveDebugger.ProcessCase do + @moduledoc false + use ExUnit.CaseTemplate import Mox From 1eb5059784846f108c4311d611b8017e3d764241 Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 12:01:07 +0100 Subject: [PATCH 12/18] Added credo check --- .github/workflows/elixir-ci.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/elixir-ci.yaml b/.github/workflows/elixir-ci.yaml index af23fdd6..894322ab 100644 --- a/.github/workflows/elixir-ci.yaml +++ b/.github/workflows/elixir-ci.yaml @@ -37,5 +37,7 @@ jobs: run: mix setup - name: Check formatting run: mix format --check-formatted + - name: Check credo + run: mix credo - name: Run tests run: mix test From bb49665226ab011361af65e30c9fbb33ad553d06 Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 12:02:36 +0100 Subject: [PATCH 13/18] Added prettier check --- .github/workflows/elixir-ci.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/elixir-ci.yaml b/.github/workflows/elixir-ci.yaml index 894322ab..2c35aab4 100644 --- a/.github/workflows/elixir-ci.yaml +++ b/.github/workflows/elixir-ci.yaml @@ -39,5 +39,7 @@ jobs: run: mix format --check-formatted - name: Check credo run: mix credo + - name Check prettier + run: cmd --cd assets prettier . --check - name: Run tests run: mix test From a1648b5d45eb364a86c1fe26d1cde54f90258b0d Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 12:03:08 +0100 Subject: [PATCH 14/18] Fixed yaml --- .github/workflows/elixir-ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/elixir-ci.yaml b/.github/workflows/elixir-ci.yaml index 2c35aab4..59c61c2a 100644 --- a/.github/workflows/elixir-ci.yaml +++ b/.github/workflows/elixir-ci.yaml @@ -39,7 +39,7 @@ jobs: run: mix format --check-formatted - name: Check credo run: mix credo - - name Check prettier + - name: Check prettier run: cmd --cd assets prettier . --check - name: Run tests run: mix test From a1603238fafa4d5e5b665ee746c423d54a65c5f3 Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 12:06:40 +0100 Subject: [PATCH 15/18] Fixed prettier check --- .github/workflows/elixir-ci.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/elixir-ci.yaml b/.github/workflows/elixir-ci.yaml index 59c61c2a..1873436b 100644 --- a/.github/workflows/elixir-ci.yaml +++ b/.github/workflows/elixir-ci.yaml @@ -40,6 +40,6 @@ jobs: - name: Check credo run: mix credo - name: Check prettier - run: cmd --cd assets prettier . --check + run: (cd assets && prettier . --check) - name: Run tests run: mix test From f36d99073052c0f39d8f1cceb43a20dae168a949 Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 12:09:51 +0100 Subject: [PATCH 16/18] Fixed prettier --- .github/workflows/elixir-ci.yaml | 2 +- mix.exs | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/elixir-ci.yaml b/.github/workflows/elixir-ci.yaml index 1873436b..5d7ae659 100644 --- a/.github/workflows/elixir-ci.yaml +++ b/.github/workflows/elixir-ci.yaml @@ -40,6 +40,6 @@ jobs: - name: Check credo run: mix credo - name: Check prettier - run: (cd assets && prettier . --check) + run: (cd assets && npx prettier . --check) - name: Run tests run: mix test diff --git a/mix.exs b/mix.exs index 94ef46cf..aefe330f 100644 --- a/mix.exs +++ b/mix.exs @@ -28,7 +28,6 @@ defmodule LiveDebugger.MixProject do [ setup: ["deps.get", "cmd --cd assets npm install", "assets.setup", "assets.build"], dev: "run --no-halt dev.exs", - "js.format": ["cmd --cd assets prettier . --write"], "assets.setup": ["esbuild.install --if-missing", "tailwind.install --if-missing"], "assets.build": ["esbuild default --minify", "tailwind live_debugger --minify"] ] From c4581163632eb761f1a3d77133cef24d4845fdbc Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 12:12:38 +0100 Subject: [PATCH 17/18] js format test --- assets/js/app.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/assets/js/app.js b/assets/js/app.js index de08ce25..bdb53d7b 100644 --- a/assets/js/app.js +++ b/assets/js/app.js @@ -33,8 +33,8 @@ let csrfToken = document .querySelector("meta[name='csrf-token']") .getAttribute('content'); let liveSocket = new LiveSocket('/live', Socket, { - longPollFallbackMs: 2500, - params: { _csrf_token: csrfToken }, + longPollFallbackMs: 2500, + params: { _csrf_token: csrfToken }, hooks: Hooks, }); From d36bcb580db1e2e3006460bc9080656b5fea8bf9 Mon Sep 17 00:00:00 2001 From: kraleppa Date: Wed, 8 Jan 2025 12:14:08 +0100 Subject: [PATCH 18/18] Prettier fix --- assets/js/app.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/assets/js/app.js b/assets/js/app.js index bdb53d7b..de08ce25 100644 --- a/assets/js/app.js +++ b/assets/js/app.js @@ -33,8 +33,8 @@ let csrfToken = document .querySelector("meta[name='csrf-token']") .getAttribute('content'); let liveSocket = new LiveSocket('/live', Socket, { - longPollFallbackMs: 2500, - params: { _csrf_token: csrfToken }, + longPollFallbackMs: 2500, + params: { _csrf_token: csrfToken }, hooks: Hooks, });