add CI pipeline with credo and dialyzer
mix ci alias: compile --warning-as-errors, format --check-formatted, credo, dialyzer, test. Credo configured with sensible defaults. Dialyzer ignore file for false positives (Stripe types, Mix tasks, ExUnit internals). Credo fixes: map_join, filter consolidation, nesting extraction, cond→if simplification. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
19
mix.exs
19
mix.exs
@@ -11,7 +11,8 @@ defmodule SimpleshopTheme.MixProject do
|
||||
aliases: aliases(),
|
||||
deps: deps(),
|
||||
compilers: [:phoenix_live_view] ++ Mix.compilers(),
|
||||
listeners: [Phoenix.CodeReloader]
|
||||
listeners: [Phoenix.CodeReloader],
|
||||
dialyzer: [ignore_warnings: ".dialyzer_ignore.exs"]
|
||||
]
|
||||
end
|
||||
|
||||
@@ -27,7 +28,7 @@ defmodule SimpleshopTheme.MixProject do
|
||||
|
||||
def cli do
|
||||
[
|
||||
preferred_envs: [precommit: :test]
|
||||
preferred_envs: [precommit: :test, ci: :test]
|
||||
]
|
||||
end
|
||||
|
||||
@@ -73,7 +74,9 @@ defmodule SimpleshopTheme.MixProject do
|
||||
{:oban, "~> 2.18"},
|
||||
{:ex_money, "~> 5.0"},
|
||||
{:ex_money_sql, "~> 1.0"},
|
||||
{:stripity_stripe, "~> 3.2"}
|
||||
{:stripity_stripe, "~> 3.2"},
|
||||
{:credo, "~> 1.7", only: [:dev, :test], runtime: false},
|
||||
{:dialyxir, "~> 1.4", only: [:dev, :test], runtime: false}
|
||||
]
|
||||
end
|
||||
|
||||
@@ -102,7 +105,15 @@ defmodule SimpleshopTheme.MixProject do
|
||||
"esbuild simpleshop_theme --minify",
|
||||
"phx.digest"
|
||||
],
|
||||
precommit: ["compile --warning-as-errors", "deps.unlock --unused", "format", "test"]
|
||||
precommit: ["compile --warning-as-errors", "deps.unlock --unused", "format", "test"],
|
||||
ci: [
|
||||
"compile --warning-as-errors",
|
||||
"deps.unlock --unused",
|
||||
"format --check-formatted",
|
||||
"credo",
|
||||
"dialyzer",
|
||||
"test"
|
||||
]
|
||||
]
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user