Skip to content

Commit

Permalink
Fix checks producing malformed issues
Browse files Browse the repository at this point in the history
  • Loading branch information
rrrene committed Apr 30, 2024
1 parent 4453100 commit 96dd00f
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 18 deletions.
3 changes: 1 addition & 2 deletions lib/credo/check/readability/strict_module_layout.ex
Original file line number Diff line number Diff line change
Expand Up @@ -194,8 +194,7 @@ defmodule Credo.Check.Readability.StrictModuleLayout do
issue_meta,
message: "#{part_to_string(part)} must appear before #{part_to_string(current_part)}",
trigger: inspect(module),
line_no: Keyword.get(file_pos, :line),
column: Keyword.get(file_pos, :column)
line_no: Keyword.get(file_pos, :line)
)
end

Expand Down
20 changes: 10 additions & 10 deletions lib/credo/check/warning/dbg.ex
Original file line number Diff line number Diff line change
Expand Up @@ -32,58 +32,58 @@ defmodule Credo.Check.Warning.Dbg do
issues,
issue_meta
) do
{ast, [issue_for(issue_meta, meta) | issues]}
{ast, [issue_for(issue_meta, meta, "dbg") | issues]}
end

defp traverse(
{:dbg, meta, [_single_param]} = ast,
issues,
issue_meta
) do
{ast, [issue_for(issue_meta, meta) | issues]}
{ast, [issue_for(issue_meta, meta, "dbg") | issues]}
end

defp traverse(
{:dbg, meta, [_first_param, _second_param]} = ast,
issues,
issue_meta
) do
{ast, [issue_for(issue_meta, meta) | issues]}
{ast, [issue_for(issue_meta, meta, "dbg") | issues]}
end

defp traverse(
{{:., _, [{:__aliases__, _, [:"Elixir", :Kernel]}, :dbg]}, meta, _args} = ast,
{{:., _, [{:__aliases__, meta, [:"Elixir", :Kernel]}, :dbg]}, _, _args} = ast,
issues,
issue_meta
) do
{ast, [issue_for(issue_meta, meta) | issues]}
{ast, [issue_for(issue_meta, meta, "Elixir.Kernel.dbg") | issues]}
end

defp traverse(
{{:., _, [{:__aliases__, _, [:Kernel]}, :dbg]}, meta, _args} = ast,
{{:., _, [{:__aliases__, meta, [:Kernel]}, :dbg]}, _, _args} = ast,
issues,
issue_meta
) do
{ast, [issue_for(issue_meta, meta) | issues]}
{ast, [issue_for(issue_meta, meta, "Kernel.dbg") | issues]}
end

defp traverse(
{:|>, _, [_, {:dbg, meta, nil}]} = ast,
issues,
issue_meta
) do
{ast, [issue_for(issue_meta, meta) | issues]}
{ast, [issue_for(issue_meta, meta, "dbg") | issues]}
end

defp traverse(ast, issues, _issue_meta) do
{ast, issues}
end

defp issue_for(issue_meta, meta) do
defp issue_for(issue_meta, meta, trigger) do
format_issue(
issue_meta,
message: "There should be no calls to `dbg/1`.",
trigger: "dbg",
trigger: trigger,
line_no: meta[:line],
column: meta[:column]
)
Expand Down
10 changes: 4 additions & 6 deletions lib/credo/check/warning/io_inspect.ex
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,6 @@ defmodule Credo.Check.Warning.IoInspect do
"""
]

@call_string "IO.inspect"

@doc false
@impl true
def run(%SourceFile{} = source_file, params) do
Expand All @@ -27,23 +25,23 @@ defmodule Credo.Check.Warning.IoInspect do
issues,
issue_meta
) do
{ast, issues_for_call(meta, issues, issue_meta)}
{ast, issues_for_call(meta, "Elixir.IO.inspect", issues, issue_meta)}
end

defp traverse(
{{:., _, [{:__aliases__, meta, [:IO]}, :inspect]}, _meta, _arguments} = ast,
issues,
issue_meta
) do
{ast, issues_for_call(meta, issues, issue_meta)}
{ast, issues_for_call(meta, "IO.inspect", issues, issue_meta)}
end

defp traverse(ast, issues, _issue_meta) do
{ast, issues}
end

defp issues_for_call(meta, issues, issue_meta) do
[issue_for(issue_meta, meta, @call_string) | issues]
defp issues_for_call(meta, trigger, issues, issue_meta) do
[issue_for(issue_meta, meta, trigger) | issues]
end

defp issue_for(issue_meta, meta, trigger) do
Expand Down

0 comments on commit 96dd00f

Please sign in to comment.