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.
141 lines
4.1 KiB
Elixir
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
|