aprs.me/mix.exs
Graham McIntire 781fdd88a3
Remove dead modules, unused deps, and commented-out code
Delete 5 unused modules: Presence (untracked), LiveView ShutdownHandler
(unused mixin), RateLimiterWrapper (pointless delegation), Passcode
(only used by own test), MapLive.Utils (pure delegates).

Fix ShutdownHandler to not call deleted Presence. Inline ParamUtils
at call sites. Remove cachex dep and 27 stale entries from mix.lock.
Clean commented-out Exq/Redis config from application.ex.
2026-02-20 08:09:22 -06:00

141 lines
4.1 KiB
Elixir

defmodule Aprsme.MixProject do
use Mix.Project
def project do
[
app: :aprsme,
version: "0.2.0",
elixir: "~> 1.17",
archives: [],
compilers: Mix.compilers(),
elixirc_paths: elixirc_paths(Mix.env()),
start_permanent: Mix.env() == :prod,
aliases: aliases(),
deps: deps(),
listeners: [Phoenix.CodeReloader],
dialyzer: [
ignore_warnings: ".dialyzer_ignore.exs",
plt_file:
{:no_warn,
"_build/dev/dialyxir_erlang-#{:erlang.system_info(:otp_release)}_elixir-#{System.version()}_deps-dev.plt"}
],
releases: [
aprsme: [
steps: [:assemble]
]
]
]
end
def cli do
[
preferred_cli_env: [
coveralls: :test,
"coveralls.detail": :test,
"coveralls.post": :test,
"coveralls.html": :test
]
]
end
# Configuration for the OTP application.
#
# Type `mix help compile.app` for more information.
def application do
[
mod: {Aprsme.Application, []},
extra_applications: [:hackney, :logger, :runtime_tools, :os_mon]
]
end
# Specifies which paths to compile per environment.
defp elixirc_paths(:test), do: ["lib", "test/support"]
defp elixirc_paths(_), do: ["lib"]
# Specifies your project dependencies.
#
# Type `mix help deps` for examples and options.
defp deps do
[
{:tidewave, "~> 0.5", only: :dev},
{:error_tracker, "~> 0.6"},
{:bcrypt_elixir, "~> 3.0"},
{:certifi, "~> 2.9"},
{:ecto_psql_extras, "~> 0.8.8"},
{:ecto_sql, "~> 3.11"},
{:geo, "~> 4.1"},
{:geo_postgis, "~> 3.4"},
{:geocalc, "~> 0.8"},
{:gen_stage, "~> 1.2"},
{:gettext, "~> 0.26"},
{:jason, "~> 1.4"},
{:libcluster, "~> 3.3"},
{:phoenix, "~> 1.8", override: true},
{:phoenix_ecto, "~> 4.4"},
{:phoenix_html, "~> 4.3.0"},
{:phoenix_live_dashboard, "~> 0.8"},
{:phoenix_live_reload, "~> 1.2", only: :dev},
{:phoenix_live_view, "~> 1.1.13"},
{:postgrex, ">= 0.0.0"},
{:swoosh, "~> 1.21"},
{:resend, "~> 0.4.1"},
{:telemetry_metrics, "~> 1.0"},
{:telemetry_poller, "~> 1.0"},
aprs_dep(),
{:esbuild, "~> 0.9", runtime: Mix.env() == :dev},
{:tailwind, "~> 0.4.0", runtime: Mix.env() == :dev},
{:heroicons,
github: "tailwindlabs/heroicons", tag: "v2.1.1", sparse: "optimized", app: false, compile: false, depth: 1},
{:bandit, "~> 1.5"},
{:req, "~> 0.5"},
{:gridsquare, "~> 0.3.1"},
{:credo, "~> 1.7", only: [:dev, :test], runtime: false},
{:dialyxir, "~> 1.0", only: :dev, runtime: false},
{:exvcr, "~> 0.15", only: :test},
{:faker, "~> 0.18", only: [:dev, :test]},
{:floki, ">= 0.30.0", only: :test},
{:lazy_html, ">= 0.1.0", only: :test},
{:mix_test_watch, "~> 1.1", only: [:dev, :test]},
{:stream_data, "~> 1.2.0", only: [:dev, :test]},
{:igniter, "~> 0.7.0", only: [:dev, :test]},
{:mox, "~> 1.2", only: :test},
{:styler, "~> 1.10", only: :dev, runtime: false},
{:hammer, "~> 7.0"},
{:gettext_pseudolocalize, "~> 0.1"}
]
end
# Aliases are shortcuts or tasks specific to the current project.
# For example, to install project dependencies and perform other setup tasks, run:
#
# $ mix setup
#
# See the documentation for `Mix` for more info on aliases.
defp aliases do
[
setup: ["deps.get", "ecto.setup"],
compile: ["compile"],
"ecto.setup": ["ecto.create", "ecto.migrate", "run priv/repo/seeds.exs"],
"ecto.reset": ["ecto.drop", "ecto.setup"],
test: ["ecto.create --quiet", "ecto.migrate --quiet", "test"],
"test.cover": ["cmd MIX_TEST_COVERAGE=1 mix test --cover"],
"assets.deploy": [
"tailwind default --minify",
"esbuild vendor",
"esbuild vendor_css",
"esbuild core_js",
"esbuild map_js",
"esbuild chart_js",
"esbuild date_adapter",
"esbuild default --minify",
"phx.digest"
]
]
end
defp aprs_dep do
{:aprs, github: "aprsme/aprs", branch: "main"}
end
# Copy Gleam BEAM files to the release
end