Merge pull request #5291 from blockscout/vb-bump-credo

Bump credo from 1.5.6 to 1.6.4
pull/5293/head
Victor Baranov 3 years ago committed by GitHub
commit 577f141e8b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 4
      apps/block_scout_web/lib/block_scout_web/views/api/rpc/token_view.ex
  2. 2
      apps/block_scout_web/lib/block_scout_web/views/bridged_tokens_view.ex
  3. 18
      apps/block_scout_web/lib/block_scout_web/views/smart_contract_view.ex
  4. 2
      apps/block_scout_web/lib/block_scout_web/views/transaction_view.ex
  5. 4
      apps/ethereum_jsonrpc/lib/ethereum_jsonrpc/encoder.ex
  6. 2
      apps/ethereum_jsonrpc/lib/ethereum_jsonrpc/web_socket.ex
  7. 6
      apps/explorer/lib/explorer/chain.ex
  8. 2
      apps/explorer/lib/explorer/chain/address/token.ex
  9. 2
      apps/explorer/lib/explorer/chain/import.ex
  10. 2
      apps/explorer/lib/explorer/chain/token_transfer.ex
  11. 5
      apps/explorer/lib/explorer/chain_spec/genesis_data.ex
  12. 6
      apps/explorer/lib/explorer/staking/contract_reader.ex
  13. 2
      apps/indexer/lib/indexer/block/fetcher.ex
  14. 2
      mix.lock

@ -41,6 +41,10 @@ defmodule BlockScoutWeb.API.RPC.TokenView do
} }
end end
defp prepare_bridged_token([]) do
%{}
end
defp prepare_bridged_token([token, bridged_token]) do defp prepare_bridged_token([token, bridged_token]) do
total_supply = divide_decimals(token.total_supply, token.decimals) total_supply = divide_decimals(token.total_supply, token.decimals)
usd_value = BridgedTokensView.bridged_token_usd_cap(bridged_token, token) usd_value = BridgedTokensView.bridged_token_usd_cap(bridged_token, token)

@ -34,7 +34,7 @@ defmodule BlockScoutWeb.BridgedTokensView do
@doc """ @doc """
Calculates capitalization of the bridged token in USD. Calculates capitalization of the bridged token in USD.
""" """
@spec bridged_token_usd_cap(%BridgedToken{}, %Token{}) :: any() @spec bridged_token_usd_cap(BridgedToken.t(), Token.t()) :: any()
def bridged_token_usd_cap(bridged_token, token) do def bridged_token_usd_cap(bridged_token, token) do
if bridged_token.custom_cap do if bridged_token.custom_cap do
bridged_token.custom_cap bridged_token.custom_cap

@ -65,16 +65,14 @@ defmodule BlockScoutWeb.SmartContractView do
String.starts_with?(type, "address") -> String.starts_with?(type, "address") ->
values = values =
value value
|> Enum.map(&binary_to_utf_string(&1)) |> Enum.map_join(", ", &binary_to_utf_string(&1))
|> Enum.join(", ")
render_array_type_value(type, values, fetch_name(names, index)) render_array_type_value(type, values, fetch_name(names, index))
String.starts_with?(type, "bytes") -> String.starts_with?(type, "bytes") ->
values = values =
value value
|> Enum.map(&binary_to_utf_string(&1)) |> Enum.map_join(", ", &binary_to_utf_string(&1))
|> Enum.join(", ")
render_array_type_value(type, values, fetch_name(names, index)) render_array_type_value(type, values, fetch_name(names, index))
@ -149,8 +147,7 @@ defmodule BlockScoutWeb.SmartContractView do
values = values =
value value
|> Enum.map(&values_only(&1, String.slice(type, 0..-3), components, nested_index + 1)) |> Enum.map(&values_only(&1, String.slice(type, 0..-3), components, nested_index + 1))
|> Enum.map(&(String.duplicate(@tab, nested_index) <> &1)) |> Enum.map_join(",</br>", &(String.duplicate(@tab, nested_index) <> &1))
|> Enum.join(",</br>")
wrap_output(render_nested_array_value(values, nested_index - 1), is_too_long) wrap_output(render_nested_array_value(values, nested_index - 1), is_too_long)
@ -170,16 +167,14 @@ defmodule BlockScoutWeb.SmartContractView do
String.starts_with?(type, "address") -> String.starts_with?(type, "address") ->
values = values =
value value
|> Enum.map(&binary_to_utf_string(&1)) |> Enum.map_join(", ", &binary_to_utf_string(&1))
|> Enum.join(", ")
wrap_output(render_array_value(values), is_too_long) wrap_output(render_array_value(values), is_too_long)
String.starts_with?(type, "bytes") -> String.starts_with?(type, "bytes") ->
values = values =
value value
|> Enum.map(&binary_to_utf_string(&1)) |> Enum.map_join(", ", &binary_to_utf_string(&1))
|> Enum.join(", ")
wrap_output(render_array_value(values), is_too_long) wrap_output(render_array_value(values), is_too_long)
@ -355,10 +350,9 @@ defmodule BlockScoutWeb.SmartContractView do
if type == "tuple" && components do if type == "tuple" && components do
types = types =
components components
|> Enum.map(fn component -> |> Enum.map_join(",", fn component ->
Map.get(component, "type") Map.get(component, "type")
end) end)
|> Enum.join(",")
"tuple[" <> types <> "]" "tuple[" <> types <> "]"
else else

@ -567,7 +567,7 @@ defmodule BlockScoutWeb.TransactionView do
end end
# Function decodes revert reason of the transaction # Function decodes revert reason of the transaction
@spec decoded_revert_reason(%Transaction{} | nil) :: binary() | nil @spec decoded_revert_reason(Transaction.t() | nil) :: binary() | nil
def decoded_revert_reason(transaction) do def decoded_revert_reason(transaction) do
revert_reason = get_pure_transaction_revert_reason(transaction) revert_reason = get_pure_transaction_revert_reason(transaction)

@ -11,7 +11,7 @@ defmodule EthereumJSONRPC.Encoder do
This is what is expected on the Json RPC data parameter. This is what is expected on the Json RPC data parameter.
""" """
@spec encode_function_call(%ABI.FunctionSelector{}, [term()]) :: String.t() @spec encode_function_call(ABI.FunctionSelector.t(), [term()]) :: String.t()
def encode_function_call(function_selector, args) do def encode_function_call(function_selector, args) do
parsed_args = parse_args(args) parsed_args = parse_args(args)
@ -49,7 +49,7 @@ defmodule EthereumJSONRPC.Encoder do
""" """
def decode_result(_, _, leave_error_as_map \\ false) def decode_result(_, _, leave_error_as_map \\ false)
@spec decode_result(map(), %ABI.FunctionSelector{} | [%ABI.FunctionSelector{}]) :: @spec decode_result(map(), ABI.FunctionSelector.t() | [ABI.FunctionSelector.t()]) ::
{String.t(), {:ok, any()} | {:error, String.t() | :invalid_data}} {String.t(), {:ok, any()} | {:error, String.t() | :invalid_data}}
def decode_result(%{error: %{code: code, data: data, message: message}, id: id}, _selector, leave_error_as_map) do def decode_result(%{error: %{code: code, data: data, message: message}, id: id}, _selector, leave_error_as_map) do
if leave_error_as_map do if leave_error_as_map do

@ -103,7 +103,7 @@ defmodule EthereumJSONRPC.WebSocket do
end end
@impl Transport @impl Transport
@spec unsubscribe(%Subscription{transport: __MODULE__, transport_options: t()}) :: :ok | {:error, reason :: term()} @spec unsubscribe(Subscription.t()) :: :ok | {:error, reason :: term()}
def unsubscribe( def unsubscribe(
%Subscription{ %Subscription{
transport: __MODULE__, transport: __MODULE__,

@ -1115,7 +1115,7 @@ defmodule Explorer.Chain do
{:actual, Decimal.new(4)} {:actual, Decimal.new(4)}
""" """
@spec fee(%Transaction{gas_used: nil}, :ether | :gwei | :wei) :: {:maximum, Decimal.t()} @spec fee(Transaction.t(), :ether | :gwei | :wei) :: {:maximum, Decimal.t()} | {:actual, Decimal.t()}
def fee(%Transaction{gas: gas, gas_price: gas_price, gas_used: nil}, unit) do def fee(%Transaction{gas: gas, gas_price: gas_price, gas_used: nil}, unit) do
fee = fee =
gas_price gas_price
@ -1125,7 +1125,6 @@ defmodule Explorer.Chain do
{:maximum, fee} {:maximum, fee}
end end
@spec fee(%Transaction{gas_used: Decimal.t()}, :ether | :gwei | :wei) :: {:actual, Decimal.t()}
def fee(%Transaction{gas_price: gas_price, gas_used: gas_used}, unit) do def fee(%Transaction{gas_price: gas_price, gas_used: gas_used}, unit) do
fee = fee =
gas_price gas_price
@ -1305,8 +1304,7 @@ defmodule Explorer.Chain do
[_ | _] = words -> [_ | _] = words ->
term_final = term_final =
words words
|> Enum.map(fn [word] -> word <> ":*" end) |> Enum.map_join(" & ", fn [word] -> word <> ":*" end)
|> Enum.join(" & ")
{:some, term_final} {:some, term_final}

@ -28,7 +28,7 @@ defmodule Explorer.Chain.Address.Token do
@doc """ @doc """
It builds a paginated query of Address.Tokens that have a balance higher than zero ordered by type and name. It builds a paginated query of Address.Tokens that have a balance higher than zero ordered by type and name.
""" """
@spec list_address_tokens_with_balance(Hash.t(), [paging_options()]) :: %Ecto.Query{} @spec list_address_tokens_with_balance(Hash.t(), [paging_options()]) :: Ecto.Query.t()
def list_address_tokens_with_balance(address_hash, options \\ []) do def list_address_tokens_with_balance(address_hash, options \\ []) do
paging_options = Keyword.get(options, :paging_options, @default_paging_options) paging_options = Keyword.get(options, :paging_options, @default_paging_options)

@ -231,7 +231,7 @@ defmodule Explorer.Chain.Import do
runner_specific_options = runner_specific_options =
if Map.has_key?(Enum.into(runner.__info__(:functions), %{}), :runner_specific_options) do if Map.has_key?(Enum.into(runner.__info__(:functions), %{}), :runner_specific_options) do
apply(runner, :runner_specific_options, []) runner.runner_specific_options()
else else
[] []
end end

@ -307,7 +307,7 @@ defmodule Explorer.Chain.TokenTransfer do
To find out its current owner, it is necessary to look at the token last To find out its current owner, it is necessary to look at the token last
transfer. transfer.
""" """
@spec address_to_unique_tokens(Hash.Address.t()) :: %Ecto.Query{} @spec address_to_unique_tokens(Hash.Address.t()) :: Ecto.Query.t()
def address_to_unique_tokens(contract_address_hash) do def address_to_unique_tokens(contract_address_hash) do
from( from(
tt in TokenTransfer, tt in TokenTransfer,

@ -97,9 +97,8 @@ defmodule Explorer.ChainSpec.GenesisData do
# sobelow_skip ["Traversal"] # sobelow_skip ["Traversal"]
defp fetch_from_file(path) do defp fetch_from_file(path) do
with {:ok, data} <- File.read(path), with {:ok, data} <- File.read(path) do
{:ok, json} <- Jason.decode(data) do Jason.decode(data)
{:ok, json}
end end
end end

@ -191,12 +191,11 @@ defmodule Explorer.Staking.ContractReader do
) do ) do
staking_epochs_joint = staking_epochs_joint =
staking_epochs staking_epochs
|> Enum.map(fn epoch -> |> Enum.map_join(fn epoch ->
epoch epoch
|> Integer.to_string(16) |> Integer.to_string(16)
|> String.pad_leading(64, ["0"]) |> String.pad_leading(64, ["0"])
end) end)
|> Enum.join("")
pool_staking_address = address_pad_to_64(pool_staking_address) pool_staking_address = address_pad_to_64(pool_staking_address)
staker = address_pad_to_64(staker) staker = address_pad_to_64(staker)
@ -268,12 +267,11 @@ defmodule Explorer.Staking.ContractReader do
) do ) do
staking_epochs_joint = staking_epochs_joint =
staking_epochs staking_epochs
|> Enum.map(fn epoch -> |> Enum.map_join(fn epoch ->
epoch epoch
|> Integer.to_string(16) |> Integer.to_string(16)
|> String.pad_leading(64, ["0"]) |> String.pad_leading(64, ["0"])
end) end)
|> Enum.join("")
pool_staking_address = address_pad_to_64(pool_staking_address) pool_staking_address = address_pad_to_64(pool_staking_address)

@ -110,7 +110,7 @@ defmodule Indexer.Block.Fetcher do
@spec fetch_and_import_range(t, Range.t()) :: @spec fetch_and_import_range(t, Range.t()) ::
{:ok, %{inserted: %{}, errors: [EthereumJSONRPC.Transport.error()]}} {:ok, %{inserted: %{}, errors: [EthereumJSONRPC.Transport.error()]}}
| {:error, | {:error,
{step :: atom(), reason :: [%Ecto.Changeset{}] | term()} {step :: atom(), reason :: [Ecto.Changeset.t()] | term()}
| {step :: atom(), failed_value :: term(), changes_so_far :: term()}} | {step :: atom(), failed_value :: term(), changes_so_far :: term()}}
def fetch_and_import_range( def fetch_and_import_range(
%__MODULE__{ %__MODULE__{

@ -21,7 +21,7 @@
"cowboy": {:hex, :cowboy, "2.9.0", "865dd8b6607e14cf03282e10e934023a1bd8be6f6bacf921a7e2a96d800cd452", [:make, :rebar3], [{:cowlib, "2.11.0", [hex: :cowlib, repo: "hexpm", optional: false]}, {:ranch, "1.8.0", [hex: :ranch, repo: "hexpm", optional: false]}], "hexpm", "2c729f934b4e1aa149aff882f57c6372c15399a20d54f65c8d67bef583021bde"}, "cowboy": {:hex, :cowboy, "2.9.0", "865dd8b6607e14cf03282e10e934023a1bd8be6f6bacf921a7e2a96d800cd452", [:make, :rebar3], [{:cowlib, "2.11.0", [hex: :cowlib, repo: "hexpm", optional: false]}, {:ranch, "1.8.0", [hex: :ranch, repo: "hexpm", optional: false]}], "hexpm", "2c729f934b4e1aa149aff882f57c6372c15399a20d54f65c8d67bef583021bde"},
"cowboy_telemetry": {:hex, :cowboy_telemetry, "0.3.1", "ebd1a1d7aff97f27c66654e78ece187abdc646992714164380d8a041eda16754", [:rebar3], [{:cowboy, "~> 2.7", [hex: :cowboy, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "3a6efd3366130eab84ca372cbd4a7d3c3a97bdfcfb4911233b035d117063f0af"}, "cowboy_telemetry": {:hex, :cowboy_telemetry, "0.3.1", "ebd1a1d7aff97f27c66654e78ece187abdc646992714164380d8a041eda16754", [:rebar3], [{:cowboy, "~> 2.7", [hex: :cowboy, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "3a6efd3366130eab84ca372cbd4a7d3c3a97bdfcfb4911233b035d117063f0af"},
"cowlib": {:hex, :cowlib, "2.11.0", "0b9ff9c346629256c42ebe1eeb769a83c6cb771a6ee5960bd110ab0b9b872063", [:make, :rebar3], [], "hexpm", "2b3e9da0b21c4565751a6d4901c20d1b4cc25cbb7fd50d91d2ab6dd287bc86a9"}, "cowlib": {:hex, :cowlib, "2.11.0", "0b9ff9c346629256c42ebe1eeb769a83c6cb771a6ee5960bd110ab0b9b872063", [:make, :rebar3], [], "hexpm", "2b3e9da0b21c4565751a6d4901c20d1b4cc25cbb7fd50d91d2ab6dd287bc86a9"},
"credo": {:hex, :credo, "1.5.6", "e04cc0fdc236fefbb578e0c04bd01a471081616e741d386909e527ac146016c6", [:mix], [{:bunt, "~> 0.2.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:file_system, "~> 0.2.8", [hex: :file_system, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "4b52a3e558bd64e30de62a648518a5ea2b6e3e5d2b164ef5296244753fc7eb17"}, "credo": {:hex, :credo, "1.6.4", "ddd474afb6e8c240313f3a7b0d025cc3213f0d171879429bf8535d7021d9ad78", [:mix], [{:bunt, "~> 0.2.0", [hex: :bunt, repo: "hexpm", optional: false]}, {:file_system, "~> 0.2.8", [hex: :file_system, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "c28f910b61e1ff829bffa056ef7293a8db50e87f2c57a9b5c3f57eee124536b7"},
"csv": {:hex, :csv, "2.4.1", "50e32749953b6bf9818dbfed81cf1190e38cdf24f95891303108087486c5925e", [:mix], [{:parallel_stream, "~> 1.0.4", [hex: :parallel_stream, repo: "hexpm", optional: false]}], "hexpm", "54508938ac67e27966b10ef49606e3ad5995d665d7fc2688efb3eab1307c9079"}, "csv": {:hex, :csv, "2.4.1", "50e32749953b6bf9818dbfed81cf1190e38cdf24f95891303108087486c5925e", [:mix], [{:parallel_stream, "~> 1.0.4", [hex: :parallel_stream, repo: "hexpm", optional: false]}], "hexpm", "54508938ac67e27966b10ef49606e3ad5995d665d7fc2688efb3eab1307c9079"},
"dataloader": {:hex, :dataloader, "1.0.9", "8fb981e327fa692f741ab283ed93790203a6f6d412800f0f4f1531372e1dbf15", [:mix], [{:ecto, ">= 3.4.3 and < 4.0.0", [hex: :ecto, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "6f8b7566c8dda46f53bdb336fd02f03f00bf58aeb6cc0f139ccdfd6f99d265a7"}, "dataloader": {:hex, :dataloader, "1.0.9", "8fb981e327fa692f741ab283ed93790203a6f6d412800f0f4f1531372e1dbf15", [:mix], [{:ecto, ">= 3.4.3 and < 4.0.0", [hex: :ecto, repo: "hexpm", optional: true]}, {:telemetry, "~> 0.4", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "6f8b7566c8dda46f53bdb336fd02f03f00bf58aeb6cc0f139ccdfd6f99d265a7"},
"db_connection": {:hex, :db_connection, "2.4.0", "d04b1b73795dae60cead94189f1b8a51cc9e1f911c234cc23074017c43c031e5", [:mix], [{:connection, "~> 1.0", [hex: :connection, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "ad416c21ad9f61b3103d254a71b63696ecadb6a917b36f563921e0de00d7d7c8"}, "db_connection": {:hex, :db_connection, "2.4.0", "d04b1b73795dae60cead94189f1b8a51cc9e1f911c234cc23074017c43c031e5", [:mix], [{:connection, "~> 1.0", [hex: :connection, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "ad416c21ad9f61b3103d254a71b63696ecadb6a917b36f563921e0de00d7d7c8"},

Loading…
Cancel
Save