Closed kianmeng closed 2 years ago
Fix error when running credo in Elixir 1.13.x/Erlang 24.1.x.
Upgraded: credo 0.10.2 => 1.6.1 (major) jason 1.2.2 => 1.3.0
$ mix credo --strict Checking 18 source files ... 22:34:05.424 [error] Task #PID<0.217.0> started from #PID<0.94.0> terminating ** (CaseClauseError) no case clause matching: {:ok, 94, 1, [], [{:identifier, {1, 1, nil}, :defmodule}, {:alias, {1, 11, nil}, :Goth}, {:do, {1, 16, nil}}, {:eol, {1, 18, 1}}, {:at_op, {2, 3, nil}, :@}, {:identifier, {2, 4, nil}, :external_resource}, {:bin_string, {2, 22, nil}, ["README.md"]}, {:eol, {2, 33, 2}}, {:at_op, {4, 3, nil}, :@}, {:identifier, {4, 4, nil}, :moduledoc}, {:bin_string, {4, 14, nil}, ["README.md"]}, {:arrow_op, {5, 14, 1}, :|>}, {:alias, {5, 17, nil}, :File}, {:., {5, 21, nil}}, {:paren_identifier, {5, 22, nil}, :read!}, {:"(", {5, 27, nil}}, {:")", {5, 28, nil}}, {:arrow_op, {6, 14, 1}, :|>}, {:alias, {6, 17, nil}, :String}, {:., {6, 23, nil}}, {:paren_identifier, {6, 24, nil}, :split}, {:"(", {6, 29, nil}}, {:bin_string, {6, 30, nil}, ["<!-- MDOC !-->"]}, {:")", {6, 46, nil}}, {:arrow_op, {7, 14, 1}, :|>}, {:alias, {7, 17, nil}, :Enum}, {:., {7, 21, nil}}, {:paren_identifier, {7, 22, nil}, :fetch!}, {:"(", {7, 28, nil}}, {:int, {7, 29, 1}, '1'}, {:")", {7, 30, nil}}, {:eol, {7, 31, 2}}, {:at_op, {9, 3, nil}, :@}, {:identifier, {9, 4, nil}, :doc}, {:bin_heredoc, {9, 8, nil}, 2, ["Fetches the token.\n\nIf the token is not in the cache, we immediately request it.\n\nTo fetch the token bypassing the cache, see `Goth.Token.fetch/1`.\n"]}, {:eol, {15, 6, 1}}, {:at_op, {16, 3, nil}, :@}, {:identifier, {16, 4, nil}, :doc}, {:kw_identifier, {16, 8, nil}, :since}, {:bin_string, {16, 15, nil}, ["1.3.0"]}, {:eol, {16, 22, ...}}, {:identifier, {17, ...}, :defdelegate}, {:paren_identifier, {...}, ...}, {:"(", ...}, {...}, ...]} lib/credo/code.ex:117: Credo.Code.to_tokens/1 lib/credo/code/interpolation_helper.ex:65: Credo.Code.InterpolationHelper.interpolation_positions/1 lib/credo/code/interpolation_helper.ex:8: Credo.Code.InterpolationHelper.replace_interpolations/2 lib/credo/code/sigils.ex:37: Credo.Code.Sigils.replace_with_spaces/3 lib/credo/check/code_helper.ex:143: Credo.Check.CodeHelper.clean_charlists_strings_sigils_and_comments/2 lib/credo/check/consistency/space_in_parentheses/collector.ex:15: Credo.Check.Consistency.SpaceInParentheses.Collector.collect_matches/2 lib/credo/check/consistency/collector.ex:140: anonymous fn/3 in Credo.Check.Consistency.Collector.find_issues/4 (elixir 1.13.0) lib/enum.ex:1593: Enum."-map/2-lists^map/1-0-"/2 Function: #Function<10.117832628/0 in Credo.Check.Runner.run/2> Args: [] 22:34:05.419 [error] Task #PID<0.216.0> started from #PID<0.94.0> terminating ** (CaseClauseError) no case clause matching: {:ok, 94, 1, [], [{:identifier, {1, 1, nil}, :defmodule}, {:alias, {1, 11, nil}, :Goth}, {:do, {1, 16, nil}}, {:eol, {1, 18, 1}}, {:at_op, {2, 3, nil}, :@}, {:identifier, {2, 4, nil}, :external_resource}, {:bin_string, {2, 22, nil}, ["README.md"]}, {:eol, {2, 33, 2}}, {:at_op, {4, 3, nil}, :@}, {:identifier, {4, 4, nil}, :moduledoc}, {:bin_string, {4, 14, nil}, ["README.md"]}, {:arrow_op, {5, 14, 1}, :|>}, {:alias, {5, 17, nil}, :File}, {:., {5, 21, nil}}, {:paren_identifier, {5, 22, nil}, :read!}, {:"(", {5, 27, nil}}, {:")", {5, 28, nil}}, {:arrow_op, {6, 14, 1}, :|>}, {:alias, {6, 17, nil}, :String}, {:., {6, 23, nil}}, {:paren_identifier, {6, 24, nil}, :split}, {:"(", {6, 29, nil}}, {:bin_string, {6, 30, nil}, ["<!-- MDOC !-->"]}, {:")", {6, 46, nil}}, {:arrow_op, {7, 14, 1}, :|>}, {:alias, {7, 17, nil}, :Enum}, {:., {7, 21, nil}}, {:paren_identifier, {7, 22, nil}, :fetch!}, {:"(", {7, 28, nil}}, {:int, {7, 29, 1}, '1'}, {:")", {7, 30, nil}}, {:eol, {7, 31, 2}}, {:at_op, {9, 3, nil}, :@}, {:identifier, {9, 4, nil}, :doc}, {:bin_heredoc, {9, 8, nil}, 2, ["Fetches the token.\n\nIf the token is not in the cache, we immediately request it.\n\nTo fetch the token bypassing the cache, see `Goth.Token.fetch/1`.\n"]}, {:eol, {15, 6, 1}}, {:at_op, {16, 3, nil}, :@}, {:identifier, {16, 4, nil}, :doc}, {:kw_identifier, {16, 8, nil}, :since}, {:bin_string, {16, 15, nil}, ["1.3.0"]}, {:eol, {16, 22, ...}}, {:identifier, {17, ...}, :defdelegate}, {:paren_identifier, {...}, ...}, {:"(", ...}, {...}, ...]} lib/credo/code.ex:117: Credo.Code.to_tokens/1 lib/credo/check/consistency/space_around_operators/collector.ex:17: Credo.Check.Consistency.SpaceAroundOperators.Collector.collect_matches/2 lib/credo/check/consistency/collector.ex:140: anonymous fn/3 in Credo.Check.Consistency.Collector.find_issues/4 (elixir 1.13.0) lib/enum.ex:1593: Enum."-map/2-lists^map/1-0-"/2 lib/credo/check/consistency/collector.ex:139: Credo.Check.Consistency.Collector.find_issues/4 lib/credo/check/consistency/space_around_operators/collector.ex:2: Credo.Check.Consistency.SpaceAroundOperators.Collector.find_and_append_issues/4 lib/credo/check/runner.ex:116: Credo.Check.Runner.do_run_check_on_source_files/3 lib/credo/check/runner.ex:109: Credo.Check.Runner.run_check_on_source_files/3 Function: #Function<10.117832628/0 in Credo.Check.Runner.run/2> Args: []
Thank you!
:tada: :tada: :tada: :tada: :tada:
Fix error when running credo in Elixir 1.13.x/Erlang 24.1.x.