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:
30
.dialyzer_ignore.exs
Normal file
30
.dialyzer_ignore.exs
Normal file
@@ -0,0 +1,30 @@
|
||||
[
|
||||
# Mix.Task callbacks and functions not in dialyzer PLT (dev-only modules)
|
||||
{"lib/mix/tasks/generate_mockups.ex", :callback_info_missing},
|
||||
{"lib/mix/tasks/generate_mockups.ex", :unknown_function},
|
||||
{"lib/mix/tasks/optimize_images.ex", :callback_info_missing},
|
||||
{"lib/mix/tasks/optimize_images.ex", :unknown_function},
|
||||
{"lib/mix/tasks/register_webhooks.ex", :callback_info_missing},
|
||||
{"lib/mix/tasks/register_webhooks.ex", :unknown_function},
|
||||
{"lib/mix/tasks/simpleshop/download_images.ex", :callback_info_missing},
|
||||
{"lib/mix/tasks/simpleshop/download_images.ex", :unknown_function},
|
||||
|
||||
# Stripe library type specs cause false positives
|
||||
{"lib/simpleshop_theme/stripe/setup.ex", :pattern_match_cov},
|
||||
{"lib/simpleshop_theme/stripe/setup.ex", :pattern_match},
|
||||
{"lib/simpleshop_theme/stripe/setup.ex", :no_return},
|
||||
{"lib/simpleshop_theme/stripe/setup.ex", :call},
|
||||
{"lib/simpleshop_theme_web/controllers/checkout_controller.ex", :call},
|
||||
{"lib/simpleshop_theme_web/controllers/checkout_controller.ex", :pattern_match_cov},
|
||||
{"lib/simpleshop_theme_web/controllers/checkout_controller.ex", :no_return},
|
||||
|
||||
# Environment-dependent: localhost?() is always true in dev
|
||||
{"lib/simpleshop_theme_web/live/admin_live/settings.ex", :pattern_match},
|
||||
|
||||
# Provider behaviour type not derived by dialyzer
|
||||
{"lib/simpleshop_theme/providers/provider.ex", :unknown_type},
|
||||
|
||||
# ExUnit internals not in PLT (test support files)
|
||||
{"test/support/conn_case.ex", :unknown_function},
|
||||
{"test/support/data_case.ex", :unknown_function}
|
||||
]
|
||||
Reference in New Issue
Block a user