Unblock CI: pull igniter into :prod for live_table compile
Sinceda6b312(Add live_table dep), every main-branch CI build has silently failed on `mix deps.compile` inside the Docker builder. The failure is that live_table ships two unguarded mix tasks — lib/mix/tasks/live_table.install.ex and lib/mix/tasks/live_table.gen.live.ex — both of which do `use Igniter.Mix.Task` at the top level without wrapping it in a `Code.ensure_loaded?(Igniter.Mix.Task)` check. When Igniter isn't available, compiling the live_table dep blows up with `module Igniter.Mix.Task is not loaded`. I had declared igniter as `only: [:dev, :test], runtime: false` which meant it was only fetched in those envs, so the prod Docker build never had it and failed there. The blast radius is every commit fromda6b312through263c1bb(14 commits) none of which ever made it to prod: - /users, /beacons, /contacts, /admin/contact-edits live_table conversions - Admin nav dropdown - Cap "Contacts I'm in" at 100 - Contact detail path-calc link + 10 ft AGL assumption - Path calculator callsign tooltip - Drop gridmap.org and do QRZ + Google geocoding locally - Feed Loss (×) HEEx escape fix - Path forecast line chart and refractivity gradient unit fix - Float.round/2 crash fix on clear-terrain diffraction loss Drop the env restriction on igniter so it's available to the prod build as well. `runtime: false` keeps it out of the release bundle so there's no runtime bloat, it's strictly a compile-time build tool for the live_table dep. Verified locally with a clean `_build/prod` + `MIX_ENV=prod mix deps.compile` (all 54 deps including live_table now build) and the full test suite still passes.
This commit is contained in:
parent
263c1bbdf5
commit
ca0a0eaa50
1 changed files with 6 additions and 1 deletions
7
mix.exs
7
mix.exs
|
|
@ -85,7 +85,12 @@ defmodule Microwaveprop.MixProject do
|
||||||
{:dialyxir, "~> 1.4", only: [:dev, :test], runtime: false},
|
{:dialyxir, "~> 1.4", only: [:dev, :test], runtime: false},
|
||||||
{:live_table, "~> 0.4.1"},
|
{:live_table, "~> 0.4.1"},
|
||||||
{:sutra_ui, "~> 0.3.0"},
|
{:sutra_ui, "~> 0.3.0"},
|
||||||
{:igniter, "~> 0.7", only: [:dev, :test], runtime: false}
|
# Required as a compile-time build dependency for live_table; its mix
|
||||||
|
# tasks (lib/mix/tasks/live_table.gen.live.ex, live_table.install.ex)
|
||||||
|
# unconditionally `use Igniter.Mix.Task` so the dep has to exist in
|
||||||
|
# every env live_table is compiled in, not just dev/test. runtime: false
|
||||||
|
# keeps it out of the release bundle.
|
||||||
|
{:igniter, "~> 0.7", runtime: false}
|
||||||
]
|
]
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue