Build log
nerves_system_trellis
spotlight 0.1.0 · fail · run spotlight-0.1.0-1791108796972
1351 of 1351 lines
1Resolving Hex dependencies...2Resolution completed in 0.192s3Unchanged:4 circular_buffer 1.1.05 cowboy 2.19.06 cowboy_telemetry 0.3.17 cowlib 2.20.0 VULNERABLE!8 EEF-CVE-2026-43966 (MEDIUM)9 aka: CVE-2026-43966, GHSA-w4f7-4cxr-rv3c10 HTTP Response Splitting via Non-VCHAR Bytes in cow_http_struct_hd:escape_string/211 https://osv.dev/vulnerability/EEF-CVE-2026-439661213 EEF-CVE-2026-43969 (LOW)14 aka: CVE-2026-43969, GHSA-g2wm-735q-3f5615 Cookie Request Header Injection via Unvalidated Encoder in cow_cookie:cookie/116 https://osv.dev/vulnerability/EEF-CVE-2026-4396917 dog_sketch 0.1.318 elixir_make 0.10.019 expo 1.1.120 gettext 0.26.221 interactive_cmd 0.1.422 jason 1.4.523 mime 2.0.724 nerves 2.0.0-pre.225 nerves_discovery 0.1.526 nerves_logging 0.2.427 nerves_runtime 0.13.1328 nerves_system_bbb 2.30.229 nerves_system_br 1.34.430 nerves_system_mangopi_mq_pro 0.17.231 nerves_system_qemu_aarch64 0.4.232 nerves_system_rpi0 2.1.233 nerves_system_rpi4 2.1.234 nerves_system_rpi5 2.1.235 nerves_system_trellis 0.5.036 nerves_system_x86_64 1.34.237 nerves_toolchain_aarch64_nerves_linux_gnu 15.3.138 nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.139 nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.140 nerves_toolchain_riscv64_nerves_linux_gnu 15.3.141 nerves_toolchain_x86_64_nerves_linux_musl 15.3.142 nerves_uevent 0.1.743 phoenix 1.5.15 VULNERABLE!44 GHSA-p8f7-22gq-m7j9 (HIGH)45 aka: CVE-2022-4297546 Phoenix before 1.6.14 mishandles check_origin wildcarding47 https://osv.dev/vulnerability/GHSA-p8f7-22gq-m7j948 phoenix_html 2.14.3 VULNERABLE!49 GHSA-5g2h-9x5v-5h3x (MEDIUM)50 aka: CVE-2021-46871, GHSA-j3gg-r6gp-95q251 phoenix_html allows Cross-site Scripting in HEEx class attributes52 https://osv.dev/vulnerability/GHSA-5g2h-9x5v-5h3x53 phoenix_live_view 0.14.8 VULNERABLE!54 EEF-CVE-2026-64941 (LOW)55 aka: CVE-2026-64941, GHSA-36m4-rm57-3prf56 Open redirect in Phoenix.LiveView.validate_local_url!/2 via ASCII tab, LF and CR57 https://osv.dev/vulnerability/EEF-CVE-2026-6494158 phoenix_pubsub 2.3.059 plug 1.20.360 plug_cowboy 2.9.061 plug_crypto 1.2.562 property_table 0.3.463 ranch 2.3.064 ring_logger 0.11.765 spotlight 0.1.066 tablet 0.3.367 telemetry 0.4.368 telemetry_metrics 0.6.269 telemetry_poller 0.5.170 toolshed 0.5.071 uboot_env 1.0.272* Getting spotlight (Hex package)73* Getting nerves (Hex package)74* Getting ring_logger (Hex package)75* Getting toolshed (Hex package)76* Getting nerves_runtime (Hex package)77* Getting nerves_system_bbb (Hex package)78* Getting nerves_system_mangopi_mq_pro (Hex package)79* Getting nerves_system_qemu_aarch64 (Hex package)80* Getting nerves_system_rpi0 (Hex package)81* Getting nerves_system_rpi4 (Hex package)82* Getting nerves_system_rpi5 (Hex package)83* Getting nerves_system_trellis (Hex package)84* Getting nerves_system_x86_64 (Hex package)85* Getting nerves_system_br (Hex package)86* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)87* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)88* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)89* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)90* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)91* Getting nerves_logging (Hex package)92* Getting nerves_uevent (Hex package)93* Getting uboot_env (Hex package)94* Getting elixir_make (Hex package)95* Getting property_table (Hex package)96* Getting circular_buffer (Hex package)97* Getting interactive_cmd (Hex package)98* Getting nerves_discovery (Hex package)99* Getting tablet (Hex package)100* Getting dog_sketch (Hex package)101* Getting gettext (Hex package)102* Getting jason (Hex package)103* Getting phoenix (Hex package)104* Getting phoenix_html (Hex package)105* Getting phoenix_live_view (Hex package)106* Getting plug_cowboy (Hex package)107* Getting telemetry_metrics (Hex package)108* Getting telemetry_poller (Hex package)109* Getting telemetry (Hex package)110* Getting cowboy (Hex package)111* Getting cowboy_telemetry (Hex package)112* Getting plug (Hex package)113* Getting mime (Hex package)114* Getting plug_crypto (Hex package)115* Getting cowlib (Hex package)116* Getting ranch (Hex package)117* Getting phoenix_pubsub (Hex package)118* Getting expo (Hex package)119Found packages with security advisories, see above for details120You have added/upgraded packages you could sponsor, run `mix hex.sponsor` to learn more121==> nerves_system_br122Generated nerves_system_br app123==> mime124Compiling 1 file (.ex)125Generated mime app126==> circular_buffer127Compiling 1 file (.ex)128Generated circular_buffer app129==> jason130Compiling 10 files (.ex)131Generated jason app132==> plug_crypto133Compiling 5 files (.ex)134Generated plug_crypto app135==> nerves_compatibility_test136===> Analyzing applications...137===> Compiling ranch138==> tablet139Compiling 2 files (.ex)140Generated tablet app141==> elixir_make142Compiling 8 files (.ex)143Generated elixir_make app144==> nerves_logging145 CC kmsg_tailer.o146 LD kmsg_tailer147Compiling 5 files (.ex)148Generated nerves_logging app149==> nerves_compatibility_test150===> Analyzing applications...151===> Compiling cowlib152==> nerves_discovery153Compiling 5 files (.ex)154Generated nerves_discovery app155==> ring_logger156Compiling 7 files (.ex)157Generated ring_logger app158==> interactive_cmd159Compiling 1 file (.ex)160Generated interactive_cmd app161==> nerves162Compiling 65 files (.ex)163 warning: redefining module Mix.Tasks.Nerves.Init (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Mix.Tasks.Nerves.Init.beam)164 │165 6 │ defmodule Mix.Tasks.Nerves.Init do166 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~167 │168 └─ lib/mix/tasks/nerves.init.ex:6: Mix.Tasks.Nerves.Init (module)169170 warning: redefining module Nerves (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.beam)171 │172 6 │ defmodule Nerves do173 │ ~~~~~~~~~~~~~~~~~~~174 │175 └─ lib/nerves.ex:6: Nerves (module)176177 warning: redefining module Nerves.ArtifactResolver (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.ArtifactResolver.beam)178 │179 5 │ defmodule Nerves.ArtifactResolver do180 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~181 │182 └─ lib/nerves/artifact_resolver.ex:5: Nerves.ArtifactResolver (module)183184 warning: redefining module Nerves.BuildAction.AppModes (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.AppModes.beam)185 │186 6 │ defmodule Nerves.BuildAction.AppModes do187 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~188 │189 └─ lib/nerves/build_action/app_modes.ex:6: Nerves.BuildAction.AppModes (module)190191 warning: redefining module Nerves.BuildAction.CheckExecutables (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.CheckExecutables.beam)192 │193 5 │ defmodule Nerves.BuildAction.CheckExecutables do194 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~195 │196 └─ lib/nerves/build_action/check_executables.ex:5: Nerves.BuildAction.CheckExecutables (module)197198 warning: redefining module Nerves.BuildAction.Erlinit (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.Erlinit.beam)199 │200 8 │ defmodule Nerves.BuildAction.Erlinit do201 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~202 │203 └─ lib/nerves/build_action/erlinit.ex:8: Nerves.BuildAction.Erlinit (module)204205 warning: redefining module Nerves.BuildAction.Firmware (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.Firmware.beam)206 │207 5 │ defmodule Nerves.BuildAction.Firmware do208 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~209 │210 └─ lib/nerves/build_action/firmware.ex:5: Nerves.BuildAction.Firmware (module)211212 warning: redefining module Nerves.BuildAction.IExStartupCheck (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.IExStartupCheck.beam)213 │214 7 │ defmodule Nerves.BuildAction.IExStartupCheck do215 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~216 │217 └─ lib/nerves/build_action/iex_startup_check.ex:7: Nerves.BuildAction.IExStartupCheck (module)218219 warning: redefining module Nerves.BuildAction.NervesV1System (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1System.beam)220 │221 5 │ defmodule Nerves.BuildAction.NervesV1System do222 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~223 │224 └─ lib/nerves/build_action/nerves_v1_system.ex:5: Nerves.BuildAction.NervesV1System (module)225226 warning: redefining module Nerves.BuildAction.NervesV1Toolchain (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1Toolchain.beam)227 │228 5 │ defmodule Nerves.BuildAction.NervesV1Toolchain do229 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~230 │231 └─ lib/nerves/build_action/nerves_v1_toolchain.ex:5: Nerves.BuildAction.NervesV1Toolchain (module)232233 warning: redefining module Nerves.BuildAction.Rootfs (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.Rootfs.beam)234 │235 5 │ defmodule Nerves.BuildAction.Rootfs do236 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~237 │238 └─ lib/nerves/build_action/rootfs.ex:5: Nerves.BuildAction.Rootfs (module)239240 warning: redefining module Nerves.BuildAction.SortApps (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.SortApps.beam)241 │242 6 │ defmodule Nerves.BuildAction.SortApps do243 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~244 │245 └─ lib/nerves/build_action/sort_apps.ex:6: Nerves.BuildAction.SortApps (module)246247 warning: redefining module Nerves.BuildAction.StripAll (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.StripAll.beam)248 │249 5 │ defmodule Nerves.BuildAction.StripAll do250 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~251 │252 └─ lib/nerves/build_action/strip_all.ex:5: Nerves.BuildAction.StripAll (module)253254 warning: redefining module Nerves.BuildAction.Trimmer (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.Trimmer.beam)255 │256 5 │ defmodule Nerves.BuildAction.Trimmer do257 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~258 │259 └─ lib/nerves/build_action/trimmer.ex:5: Nerves.BuildAction.Trimmer (module)260261 warning: redefining module Nerves.BuildPlan (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildPlan.beam)262 │263 5 │ defmodule Nerves.BuildPlan do264 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~265 │266 └─ lib/nerves/build_plan.ex:5: Nerves.BuildPlan (module)267268 warning: redefining module Nerves.BuildPlan.Checks (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildPlan.Checks.beam)269 │270 5 │ defmodule Nerves.BuildPlan.Checks do271 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~272 │273 └─ lib/nerves/build_plan/checks.ex:5: Nerves.BuildPlan.Checks (module)274275 warning: redefining module Nerves.Container (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.Container.beam)276 │277 6 │ defmodule Nerves.Container do278 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~279 │280 └─ lib/nerves/container.ex:6: Nerves.Container (module)281282 warning: redefining module Nerves.Fingerprint (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.Fingerprint.beam)283 │284 5 │ defmodule Nerves.Fingerprint do285 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~286 │287 └─ lib/nerves/fingerprint.ex:5: Nerves.Fingerprint (module)288289 warning: redefining module Nerves.MixPackage (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.MixPackage.beam)290 │291 5 │ defmodule Nerves.MixPackage do292 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~293 │294 └─ lib/nerves/mix_package.ex:5: Nerves.MixPackage (module)295296 warning: redefining module Nerves.Paths (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.Paths.beam)297 │298 5 │ defmodule Nerves.Paths do299 │ ~~~~~~~~~~~~~~~~~~~~~~~~~300 │301 └─ lib/nerves/paths.ex:5: Nerves.Paths (module)302303 warning: redefining module Nerves.TargetTuple (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.TargetTuple.beam)304 │305 5 │ defmodule Nerves.TargetTuple do306 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~307 │308 └─ lib/nerves/target_tuple.ex:5: Nerves.TargetTuple (module)309310Generated nerves app311==> nerves_toolchain_armv7_nerves_linux_gnueabihf312Compiling 1 file (.ex)313Generated nerves_toolchain_armv7_nerves_linux_gnueabihf app314==> nerves_system_trellis315Generated nerves_system_trellis app316==> dog_sketch317Compiling 4 files (.ex)318 warning: Kernel.ParallelRequire.files/1 is deprecated. Use Kernel.ParallelCompiler.require/2 instead319 │320 7 │ |> Kernel.ParallelRequire.files()321 │ ~322 │323 └─ lib/mix/tasks/proper.ex:7:31: Mix.Tasks.Proper.run/1324325 warning: a struct for DogSketch.ExactDog is expected on struct update:326327 %DogSketch.ExactDog{s | data: data, total: s.total + 1}328329 but got type:330331 dynamic(%{..., data: map()})332333 where "s" was given the type:334335 # type: dynamic(%{..., data: map()})336 # from: lib/dog_sketch/exact_dog.ex:14:16337 Map.update(s.data, val, 1, fn x -> x + 1 end)338339 when defining the variable "s", you must also pattern match on "%DogSketch.ExactDog{}"340341 type warning found at:342 │343 16 │ %__MODULE__{s | data: data, total: s.total + 1}344 │ ~345 │346 └─ lib/dog_sketch/exact_dog.ex:16:5: DogSketch.ExactDog.insert/2347348 warning: a struct for DogSketch.SimpleDog is expected on struct update:349350 %DogSketch.SimpleDog{s | data: data, total: s.total + 1}351352 but got type:353354 dynamic(%{..., data: map(), inv_log_gamma: float() or integer()})355356 where "s" was given the types:357358 # type: dynamic(%{..., inv_log_gamma: float() or integer()})359 # from: lib/dog_sketch/simple_dog.ex:17:31360 :math.log(val) * s.inv_log_gamma361362 # type: dynamic(%{..., data: map(), inv_log_gamma: float() or integer()})363 # from: lib/dog_sketch/simple_dog.ex:19:16364 Map.update(s.data, bin, 1, fn x -> x + 1 end)365366 when defining the variable "s", you must also pattern match on "%DogSketch.SimpleDog{}"367368 type warning found at:369 │370 21 │ %__MODULE__{s | data: data, total: s.total + 1}371 │ ~372 │373 └─ lib/dog_sketch/simple_dog.ex:21:5: DogSketch.SimpleDog.insert/2374375Generated dog_sketch app376==> nerves_compatibility_test377===> Analyzing applications...378===> Compiling telemetry379==> telemetry_metrics380Compiling 7 files (.ex)381 warning: unused require Logger382 │383 391 │ require Logger384 │ ~385 │386 └─ lib/telemetry_metrics.ex:391:3387388Generated telemetry_metrics app389==> nerves_compatibility_test390===> Analyzing applications...391===> Compiling telemetry_poller392===> Analyzing applications...393===> Compiling cowboy394==> expo395Compiling 2 files (.erl)396Compiling 22 files (.ex)397Generated expo app398==> gettext399Compiling 18 files (.ex)400 warning: unused require Gettext.Macros401 │402 594 │ require Gettext.Macros403 │ ~404 │405 └─ lib/gettext.ex:594:3406407 warning: Kernel.ParallelCompiler.async/1 is deprecated. Use `pmap/2` instead408 │409 426 │ Kernel.ParallelCompiler.async(fn ->410 │ ~411 │412 └─ lib/gettext/compiler.ex:426:39: Gettext.Compiler.compile_po_files/3413414 warning: the following clause is redundant:415416 defp ensure_empty_msgstr!(%Expo.Message.Plural{} = message)417418 it has type:419420 dynamic(%Expo.Message.Plural{})421422 previous clauses have already matched on the following types:423424 %Expo.Message.Singular{}425 %Expo.Message.Plural{}426427 │428 391 │ defp ensure_empty_msgstr!(%Message.Plural{} = message) do429 │ ~430 │431 └─ lib/gettext/extractor.ex:391:8: Gettext.Extractor.ensure_empty_msgstr!/1432433Generated gettext app434==> phoenix_pubsub435Compiling 12 files (.ex)436Generated phoenix_pubsub app437==> plug438Compiling 1 file (.erl)439Compiling 42 files (.ex)440Generated plug app441==> phoenix_html442Compiling 8 files (.ex)443 warning: using single-quoted strings to represent charlists is deprecated.444 Use ~c"" if you indeed want a charlist or use "" instead.445 You may run "mix format --migrate" to change all single-quoted446 strings to use the ~c sigil and fix this warning.447 │448 12 │ @anno (if :erlang.system_info(:otp_release) >= '19' do449 │ ~450 │451 └─ lib/phoenix_html/engine.ex:12:50452453 warning: the 1st pattern in clause will never match:454455 60456457 because it is expected to receive type:458459 dynamic(empty_list() or non_empty_list(term(), term()))460461 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())462463 type warning found at:464 │465 56 │ def to_iodata(?<), do: "<"466 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~467 │468 └─ lib/phoenix_html/safe.ex:56: Phoenix.HTML.Safe.List.to_iodata/1469470 warning: the 1st pattern in clause will never match:471472 62473474 because it is expected to receive type:475476 dynamic(empty_list() or non_empty_list(term(), term()))477478 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())479480 type warning found at:481 │482 57 │ def to_iodata(?>), do: ">"483 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~484 │485 └─ lib/phoenix_html/safe.ex:57: Phoenix.HTML.Safe.List.to_iodata/1486487 warning: the 1st pattern in clause will never match:488489 38490491 because it is expected to receive type:492493 dynamic(empty_list() or non_empty_list(term(), term()))494495 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())496497 type warning found at:498 │499 58 │ def to_iodata(?&), do: "&"500 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~501 │502 └─ lib/phoenix_html/safe.ex:58: Phoenix.HTML.Safe.List.to_iodata/1503504 warning: the 1st pattern in clause will never match:505506 34507508 because it is expected to receive type:509510 dynamic(empty_list() or non_empty_list(term(), term()))511512 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())513514 type warning found at:515 │516 59 │ def to_iodata(?"), do: """517 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~518 │519 └─ lib/phoenix_html/safe.ex:59: Phoenix.HTML.Safe.List.to_iodata/1520521 warning: the 1st pattern in clause will never match:522523 39524525 because it is expected to receive type:526527 dynamic(empty_list() or non_empty_list(term(), term()))528529 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())530531 type warning found at:532 │533 60 │ def to_iodata(?'), do: "'"534 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~535 │536 └─ lib/phoenix_html/safe.ex:60: Phoenix.HTML.Safe.List.to_iodata/1537538 warning: the 1st pattern in clause will never match:539540 {:safe, data}541542 because it is expected to receive type:543544 dynamic(empty_list() or non_empty_list(term(), term()))545546 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())547548 type warning found at:549 │550 76 │ def to_iodata({:safe, data}) do551 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~552 │553 └─ lib/phoenix_html/safe.ex:76: Phoenix.HTML.Safe.List.to_iodata/1554555 warning: the following clause is redundant:556557 def to_iodata(other)558559 it has type:560561 dynamic(empty_list() or non_empty_list(term(), term()))562563 previous clauses have already matched on the following types:564565 non_empty_list(term(), term())566 empty_list()567568 │569 80 │ def to_iodata(other) do570 │ ~571 │572 └─ lib/phoenix_html/safe.ex:80:7: Phoenix.HTML.Safe.List.to_iodata/1573574 warning: the 1st pattern in clause will never match:575576 h577578 because it is expected to receive type:579580 dynamic(empty_list() or non_empty_list(term(), term()))581582 where "h" was given the type:583584 # type: integer()585 # from: lib/phoenix_html/safe.ex:62:25586 is_integer(h)587588 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())589590 type warning found at:591 │592 62 │ def to_iodata(h) when is_integer(h) and h <= 255 do593 │ ~594 │595 └─ lib/phoenix_html/safe.ex:62:17: Phoenix.HTML.Safe.List.to_iodata/1596597 warning: the 1st pattern in clause will never match:598599 h600601 because it is expected to receive type:602603 dynamic(empty_list() or non_empty_list(term(), term()))604605 where "h" was given the type:606607 # type: integer()608 # from: lib/phoenix_html/safe.ex:66:25609 is_integer(h)610611 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())612613 type warning found at:614 │615 66 │ def to_iodata(h) when is_integer(h) do616 │ ~617 │618 └─ lib/phoenix_html/safe.ex:66:17: Phoenix.HTML.Safe.List.to_iodata/1619620 warning: the 1st pattern in clause will never match:621622 h623624 because it is expected to receive type:625626 dynamic(empty_list() or non_empty_list(term(), term()))627628 where "h" was given the type:629630 # type: binary()631 # from: lib/phoenix_html/safe.ex:72:25632 is_binary(h)633634 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())635636 type warning found at:637 │638 72 │ def to_iodata(h) when is_binary(h) do639 │ ~640 │641 └─ lib/phoenix_html/safe.ex:72:17: Phoenix.HTML.Safe.List.to_iodata/1642643Generated phoenix_html app644==> uboot_env645Compiling 5 files (.ex)646Generated uboot_env app647==> property_table648Compiling 8 files (.ex)649Generated property_table app650==> nerves_uevent651 CC uevent.o652 LD uevent653Compiling 5 files (.ex)654Generated nerves_uevent app655==> nerves_runtime656Compiling 14 files (.ex)657Generated nerves_runtime app658==> toolshed659Compiling 5 files (.ex)660Generated toolshed app661==> nerves_compatibility_test662===> Analyzing applications...663===> Compiling cowboy_telemetry664==> plug_cowboy665Compiling 5 files (.ex)666Generated plug_cowboy app667warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"668 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2669 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1670 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5671 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2672 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4673 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2674675==> phoenix676Compiling 66 files (.ex)677 warning: the variable "prefix" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator678 │679 194 │ <<attr::size(prefix)-binary, ":unique">> -> attr680 │ ~681 │682 └─ lib/mix/phoenix/schema.ex:194:20: Mix.Phoenix.Schema.drop_unique/1683684 warning: using single-quoted strings to represent charlists is deprecated.685 Use ~c"" if you indeed want a charlist or use "" instead.686 You may run "mix format --migrate" to change all single-quoted687 strings to use the ~c sigil and fix this warning.688 │689 258 │ notBefore: {:utcTime, '#{not_before}000000Z'},690 │ ~691 │692 └─ lib/mix/tasks/phx.gen.cert.ex:258:33693694 warning: using single-quoted strings to represent charlists is deprecated.695 Use ~c"" if you indeed want a charlist or use "" instead.696 You may run "mix format --migrate" to change all single-quoted697 strings to use the ~c sigil and fix this warning.698 │699 259 │ notAfter: {:utcTime, '#{not_after}000000Z'}700 │ ~701 │702 └─ lib/mix/tasks/phx.gen.cert.ex:259:32703704 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead705 │706 55 │ Logger.warn(707 │ ~708 │709 └─ lib/phoenix/code_reloader/server.ex:55:20: Phoenix.CodeReloader.Server.handle_call/3710711 warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.712713 This error happens when you have function calls without parentheses inside keywords. For example:714715 function(arg, one: nested_call a, b, c)716 function(arg, one: if expr, do: :this, else: :that)717718 In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:719720 function(arg, one: if(expr, do: :this, else: :that))721 function(arg, one: nested_call(a, b, c))722723 Ambiguity found at:724 │725 1002 │ defp get_disposition_type(other), do: raise ArgumentError, "expected :disposition to be :attachment or :inline, got: #{inspect(other)}"726 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~727 │728 └─ lib/phoenix/controller.ex:1002729730 warning: unused require Logger731 │732 9 │ require Logger733 │ ~734 │735 └─ lib/phoenix/config.ex:9:3736737 warning: unused require Logger738 │739 240 │ require Logger740 │ ~741 │742 └─ lib/phoenix/endpoint.ex:240:3743744 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead745 │746 1013 │ Logger.warn "send_download/3 has been invoked during an AJAX request. " <>747 │ ~748 │749 └─ lib/phoenix/controller.ex:1013:14: Phoenix.Controller.warn_if_ajax/1750751 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead752 │753 82 │ Logger.warn "Phoenix.Endpoint.CowboyAdapter is deprecated and it will be removed in next versions. " <>754 │ ~755 │756 └─ lib/phoenix/endpoint/cowboy_adapter.ex:82:12: Phoenix.Endpoint.CowboyAdapter.child_specs/2757758 warning: unused require Phoenix.Endpoint759 │760 6 │ require Phoenix.Endpoint761 │ ~762 │763 └─ lib/phoenix/controller.ex:6:3764765 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead766 │767 71 │ Logger.warn("no configuration found for otp_app #{inspect(otp_app)} and module #{inspect(mod)}")768 │ ~769 │770 └─ lib/phoenix/endpoint/supervisor.ex:71:20: Phoenix.Endpoint.Supervisor.init/1771772 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead773 │774 95 │ Logger.warn(":instrumenters configuration for #{inspect(mod)} is deprecated and has no effect")775 │ ~776 │777 └─ lib/phoenix/endpoint/supervisor.ex:95:14: Phoenix.Endpoint.Supervisor.init/1778779 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead780 │781 116 │ Logger.warn """782 │ ~783 │784 └─ lib/phoenix/endpoint/supervisor.ex:116:14: Phoenix.Endpoint.Supervisor.pubsub_children/2785786 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead787 │788 166 │ Logger.warn "Phoenix.Endpoint.CowboyHandler is deprecated, please use Phoenix.Endpoint.CowboyAdapter instead"789 │ ~790 │791 └─ lib/phoenix/endpoint/supervisor.ex:166:16: Phoenix.Endpoint.Supervisor.user_adapter/2792793 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead794 │795 170 │ Logger.warn "The :handler option in #{inspect endpoint} is deprecated, please use :adapter instead"796 │ ~797 │798 └─ lib/phoenix/endpoint/supervisor.ex:170:16: Phoenix.Endpoint.Supervisor.user_adapter/2799800 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead801 │802 346 │ Logger.warn("url: [host: ...] configuration value #{inspect(host)} for #{inspect(endpoint)} is invalid")803 │ ~804 │805 └─ lib/phoenix/endpoint/supervisor.ex:346:14: Phoenix.Endpoint.Supervisor.build_url/2806807 warning: the variable "prefix_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator808 │809 46 │ <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix810 │ ~811 │812 └─ lib/phoenix/naming.ex:46:29: Phoenix.Naming.unsuffix/2813814 warning: using single-quoted strings to represent charlists is deprecated.815 Use ~c"" if you indeed want a charlist or use "" instead.816 You may run "mix format --migrate" to change all single-quoted817 strings to use the ~c sigil and fix this warning.818 │819 411 │ @anno (if :erlang.system_info(:otp_release) >= '19' do820 │ ~821 │822 └─ lib/phoenix/router.ex:411:50823824 warning: unused require Phoenix.Endpoint825 │826 19 │ require Phoenix.Endpoint827 │ ~828 │829 └─ lib/phoenix/endpoint/render_errors.ex:19:3830831 warning: using single-quoted strings to represent charlists is deprecated.832 Use ~c"" if you indeed want a charlist or use "" instead.833 You may run "mix format --migrate" to change all single-quoted834 strings to use the ~c sigil and fix this warning.835 │836 8 │ @anno (if :erlang.system_info(:otp_release) >= '19' do837 │ ~838 │839 └─ lib/phoenix/router/helpers.ex:8:50840841 warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.842843 This error happens when you have function calls without parentheses inside keywords. For example:844845 function(arg, one: nested_call a, b, c)846 function(arg, one: if expr, do: :this, else: :that)847848 In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:849850 function(arg, one: if(expr, do: :this, else: :that))851 function(arg, one: nested_call(a, b, c))852853 Ambiguity found at:854 │855 71 │ unless actions -- supported_actions == [], do: raise ArgumentError, """856 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~857 │858 └─ lib/phoenix/router/resource.ex:71859860 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead861 │862 734 │ Logger.warn fn -> "Ignoring unmatched topic \"#{topic}\" in #{inspect(handler)}" end863 │ ~864 │865 └─ lib/phoenix/socket.ex:734:12: Phoenix.Socket.encode_ignore/2866867 warning: unused require Phoenix.Endpoint868 │869 188 │ require Phoenix.Endpoint870 │ ~871 │872 └─ lib/phoenix/socket.ex:188:3873874 warning: unused require Phoenix.Endpoint875 │876 6 │ require Phoenix.Endpoint877 │ ~878 │879 └─ lib/phoenix/channel/server.ex:6:3880881 warning: unused require Logger882 │883 93 │ require Logger884 │ ~885 │886 └─ lib/phoenix/token.ex:93:3887888 warning: using single-quoted strings to represent charlists is deprecated.889 Use ~c"" if you indeed want a charlist or use "" instead.890 You may run "mix format --migrate" to change all single-quoted891 strings to use the ~c sigil and fix this warning.892 │893 178 │ @anno (if :erlang.system_info(:otp_release) >= '19' do894 │ ~895 │896 └─ lib/phoenix/view.ex:178:50897898 warning: a struct for Plug.Conn is expected on struct update:899900 %Plug.Conn{conn | state: :sent}901902 but got type:903904 dynamic()905906 where "conn" was given the type:907908 # type: dynamic()909 # from: lib/phoenix/endpoint/render_errors.ex:57:17910 conn911912 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"913914 type warning found at:915 │916 61 │ %Plug.Conn{conn | state: :sent}917 │ ~918 │919 └─ lib/phoenix/endpoint/render_errors.ex:61:9: Phoenix.Endpoint.RenderErrors.__catch__/5920921 warning: a struct for Plug.Conn is expected on struct update:922923 %Plug.Conn{conn | query_params: %{}, params: %{}}924925 but got type:926927 dynamic(%{..., params: %Plug.Conn.Unfetched{}})928929 where "conn" was given the types:930931 # type: dynamic(%{..., params: term()})932 # from: lib/phoenix/endpoint/render_errors.ex:124:17933 conn.params934935 # type: dynamic(%{..., params: %Plug.Conn.Unfetched{}})936 # from: lib/phoenix/endpoint/render_errors.ex:124:17937 conn.params938939 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"940941 type warning found at:942 │943 125 │ %Plug.Conn.Unfetched{} -> %Plug.Conn{conn | query_params: %{}, params: %{}}944 │ ~945 │946 └─ lib/phoenix/endpoint/render_errors.ex:125:35: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1947948 warning: a struct for Plug.Conn is expected on struct update:949950 %Plug.Conn{conn | query_params: %{}, params: params}951952 but got type:953954 dynamic(%{..., params: not %Plug.Conn.Unfetched{}})955956 where "conn" was given the types:957958 # type: dynamic(%{..., params: term()})959 # from: lib/phoenix/endpoint/render_errors.ex:124:17960 conn.params961962 # type: dynamic(%{..., params: not %Plug.Conn.Unfetched{}})963 # from: lib/phoenix/endpoint/render_errors.ex:124:17964 conn.params965966 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"967968 type warning found at:969 │970 126 │ params -> %Plug.Conn{conn | query_params: %{}, params: params}971 │ ~972 │973 └─ lib/phoenix/endpoint/render_errors.ex:126:19: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1974975 warning: incompatible types given to socket_children/1:976977 socket_children(mod)978979 given types:980981 -dynamic(atom())-982983 but expected one of:984985 %{..., __sockets__: term()}986987 where "mod" was given the types:988989 # type: dynamic(atom() or binary())990 # from: lib/phoenix/endpoint/supervisor.ex:64:41991 defaults(otp_app, mod)992993 # type: dynamic(atom())994 # from: lib/phoenix/endpoint/supervisor.ex:68:16995 mod.init(:supervisor, env_conf)996997 type warning found at:998 │999 105 │ socket_children(mod) ++1000 │ ~1001 │1002 └─ lib/phoenix/endpoint/supervisor.ex:105:7: Phoenix.Endpoint.Supervisor.init/110031004 warning: a struct for Plug.Conn is expected on struct update:10051006 %Plug.Conn{conn | params: params}10071008 but got type:10091010 dynamic(%{..., params: map()})10111012 where "conn" was given the type:10131014 # type: dynamic(%{..., params: map()})1015 # from: lib/phoenix/controller.ex:1040:171016 Map.get(conn.params, required_key)10171018 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"10191020 type warning found at:1021 │1022 1047 │ %Plug.Conn{conn | params: params}1023 │ ~1024 │1025 └─ lib/phoenix/controller.ex:1047:5: Phoenix.Controller.scrub_params/210261027Generated phoenix app1028warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1029 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21030 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11031 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51032 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21033 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41034 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/210351036==> phoenix_live_view1037Compiling 18 files (.ex)1038 warning: unused require Logger1039 │1040 26 │ require Logger1041 │ ~1042 │1043 └─ lib/phoenix_live_view/socket.ex:26:310441045 warning: unused require Phoenix.ConnTest1046 │1047 134 │ require Phoenix.ConnTest1048 │ ~1049 │1050 └─ lib/phoenix_live_view/test/live_view_test.ex:134:310511052 warning: a struct for Phoenix.LiveView.Socket is expected on struct update:10531054 %Phoenix.LiveView.Socket{1055 socket1056 | private: Map.put(socket.private, :phoenix_live_layout, {mod, template})1057 }10581059 but got type:10601061 dynamic()10621063 where "socket" was given the type:10641065 # type: dynamic()1066 # from: lib/phoenix_live_view/utils.ex:456:211067 socket10681069 when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"10701071 type warning found at:1072 │1073 457 │ %Socket{socket | private: Map.put(socket.private, :phoenix_live_layout, {mod, template})}1074 │ ~1075 │1076 └─ lib/phoenix_live_view/utils.ex:457:5: Phoenix.LiveView.Utils.do_mount_opt/310771078 warning: Logger.disable/1 is deprecated. Use Logger.put_process_level(pid, :none) instead1079 │1080 44 │ Logger.disable(self())1081 │ ~1082 │1083 └─ lib/phoenix_live_view/test/client_proxy.ex:44:12: Phoenix.LiveViewTest.ClientProxy.init/110841085 warning: a struct for Phoenix.LiveView.Socket is expected on struct update:10861087 %Phoenix.LiveView.Socket{socket | private: Map.put(socket.private, :phoenix_live_layout, false)}10881089 but got type:10901091 dynamic()10921093 where "socket" was given the type:10941095 # type: dynamic()1096 # from: lib/phoenix_live_view/utils.ex:460:211097 socket10981099 when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"11001101 type warning found at:1102 │1103 461 │ %Socket{socket | private: Map.put(socket.private, :phoenix_live_layout, false)}1104 │ ~1105 │1106 └─ lib/phoenix_live_view/utils.ex:461:5: Phoenix.LiveView.Utils.do_mount_opt/311071108 warning: a struct for Phoenix.LiveViewTest.ClientProxy is expected on struct update:11091110 %Phoenix.LiveViewTest.ClientProxy{view | rendered: rendered}11111112 but got type:11131114 dynamic(%{..., rendered: term()})11151116 where "view" was given the type:11171118 # type: dynamic(%{..., rendered: term()})1119 # from: lib/phoenix_live_view/test/client_proxy.ex:505:241120 Phoenix.LiveViewTest.DOM.merge_diff(view.rendered, diff)11211122 when defining the variable "view", you must also pattern match on "%Phoenix.LiveViewTest.ClientProxy{}"11231124 type warning found at:1125 │1126 506 │ new_view = %ClientProxy{view | rendered: rendered}1127 │ ~1128 │1129 └─ lib/phoenix_live_view/test/client_proxy.ex:506:20: Phoenix.LiveViewTest.ClientProxy.merge_rendered/311301131 warning: Plug.Conn.Query.decode_pair/2 is deprecated. Use decode_init/0, decode_each/2, and decode_done/2 instead1132 │1133 835 │ Plug.Conn.Query.decode_pair({name, DOM.attribute(selected, "value")}, acc)1134 │ ~1135 │1136 └─ lib/phoenix_live_view/test/client_proxy.ex:835:23: Phoenix.LiveViewTest.ClientProxy.form_defaults/31137 └─ lib/phoenix_live_view/test/client_proxy.ex:840:21: Phoenix.LiveViewTest.ClientProxy.form_defaults/31138 └─ lib/phoenix_live_view/test/client_proxy.ex:850:27: Phoenix.LiveViewTest.ClientProxy.form_defaults/31139 └─ lib/phoenix_live_view/test/client_proxy.ex:859:25: Phoenix.LiveViewTest.ClientProxy.form_defaults/311401141 warning: a struct for Phoenix.LiveView.Socket is expected on struct update:11421143 %Phoenix.LiveView.Socket{1144 socket1145 | assigns: Map.merge(temp_assigns, socket.assigns),1146 private: Map.put(socket.private, :temporary_assigns, temp_assigns)1147 }11481149 but got type:11501151 dynamic()11521153 where "socket" was given the type:11541155 # type: dynamic()1156 # from: lib/phoenix_live_view/utils.ex:470:211157 socket11581159 when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"11601161 type warning found at:1162 │1163 477 │ %Socket{1164 │ ~1165 │1166 └─ lib/phoenix_live_view/utils.ex:477:5: Phoenix.LiveView.Utils.do_mount_opt/311671168 warning: a struct for Phoenix.LiveView.Socket is expected on struct update:11691170 %Phoenix.LiveView.Socket{1171 socket1172 | assigns: %Phoenix.LiveView.Socket.AssignsNotInSocket{__assigns__: assigns}1173 }11741175 but got type:11761177 dynamic(%{..., assigns: term(), changed: term()})11781179 where "socket" was given the type:11801181 # type: dynamic(%{..., assigns: term(), changed: term()})1182 # from: lib/phoenix_live_view/utils.ex:488:611183 %{assigns: assigns, changed: changed} = socket11841185 when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"11861187 type warning found at:1188 │1189 489 │ socket = %Socket{socket | assigns: %Socket.AssignsNotInSocket{__assigns__: assigns}}1190 │ ~1191 │1192 └─ lib/phoenix_live_view/utils.ex:489:14: Phoenix.LiveView.Utils.render_assigns/111931194 warning: the following clause is redundant:11951196 def to_iodata(%_{} = struct)11971198 it has type:11991200 dynamic(%Phoenix.LiveView.Rendered{})12011202 previous clauses have already matched on the following types:12031204 %Phoenix.LiveView.Rendered{}12051206 │1207 126 │ def to_iodata(%_{} = struct) do1208 │ ~1209 │1210 └─ lib/phoenix_live_view/engine.ex:126:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/112111212 warning: the 1st pattern in clause will never match:12131214 nil12151216 because it is expected to receive type:12171218 dynamic(%Phoenix.LiveView.Rendered{})12191220 hint: defimpl for Phoenix.LiveView.Rendered requires its callbacks to match exclusively on %Phoenix.LiveView.Rendered{}12211222 type warning found at:1223 │1224 130 │ def to_iodata(nil) do1225 │ ~~~~~~~~~~~~~~~~~~~~~1226 │1227 └─ lib/phoenix_live_view/engine.ex:130: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/112281229 warning: function handle_text/3 required by behaviour EEx.Engine is not implemented (in module Phoenix.LiveView.Engine)1230 │1231 148 │ defmodule Phoenix.LiveView.Engine do1232 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1233 │1234 └─ lib/phoenix_live_view/engine.ex:148: Phoenix.LiveView.Engine (module)12351236 warning: the following clause is redundant:12371238 def to_iodata(other)12391240 it has type:12411242 dynamic(%Phoenix.LiveView.Rendered{})12431244 previous clauses have already matched on the following types:12451246 %Phoenix.LiveView.Rendered{}12471248 │1249 134 │ def to_iodata(other) do1250 │ ~1251 │1252 └─ lib/phoenix_live_view/engine.ex:134:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/112531254 warning: got "@impl true" for function handle_text/2 but no behaviour specifies such callback. The known callbacks are:12551256 * Phoenix.Template.Engine.compile/2 (function)1257 * EEx.Engine.handle_begin/1 (function)1258 * EEx.Engine.handle_body/1 (function)1259 * EEx.Engine.handle_end/1 (function)1260 * EEx.Engine.handle_expr/3 (function)1261 * EEx.Engine.handle_text/3 (function)1262 * EEx.Engine.init/1 (function)12631264 │1265 325 │ def handle_text(state, text) do1266 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1267 │1268 └─ lib/phoenix_live_view/engine.ex:325: Phoenix.LiveView.Engine (module)12691270Generated phoenix_live_view app1271warning: Phoenix now requires you to explicitly list which engine to use1272for Phoenix JSON encoding. We recommend everyone to upgrade to1273Jason by setting in your config/config.exs:12741275 config :phoenix, :json_library, Jason12761277And then adding {:jason, "~> 1.0"} as a dependency.12781279If instead you would rather continue using Poison, then add to1280your config/config.exs:12811282 config :phoenix, :json_library, Poison12831284 (phoenix 1.5.15) lib/phoenix.ex:38: Phoenix.start/21285 (kernel 11.0.4) application_master.erl:299: :application_master.start_it_old/412861287warning: the :gettext compiler is no longer required in your mix.exs.12881289Please find the following line in your mix.exs and remove the :gettext entry:12901291 compilers: [..., :gettext, ...] ++ Mix.compilers(),12921293 (gettext 0.26.2) lib/mix/tasks/compile.gettext.ex:5: Mix.Tasks.Compile.Gettext.run/11294 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51295 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21296 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41297 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/21298 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/512991300==> spotlight1301Compiling 14 files (.ex)1302warning: defining a Gettext backend by calling13031304 use Gettext, otp_app: ...13051306is deprecated. To define a backend, call:13071308 use Gettext.Backend, otp_app: :my_app13091310Then, instead of importing your backend, call this in your module:13111312 use Gettext, backend: MyApp.Gettext13131314 lib/spotlight_web/gettext.ex:23: SpotlightWeb.Gettext (module)13151316warning: Phoenix.LiveView.Engine.handle_text/2 is deprecated, implement handle_text/3 instead1317 (eex 1.20.3) lib/eex/compiler.ex:315: EEx.Compiler.compile/31318 (phoenix_live_view 0.14.8) lib/phoenix_live_view/renderer.ex:26: Phoenix.LiveView.Renderer."MACRO-__before_compile__"/21319 (elixir 1.20.3) src/elixir_dispatch.erl:263: :elixir_dispatch.expand_macro_fun/71320 (elixir 1.20.3) src/elixir_dispatch.erl:155: :elixir_dispatch.dispatch_require/71321 (elixir 1.20.3) src/elixir_module.erl:525: :elixir_module.expand_callback/61322 (stdlib 8.1) lists.erl:2465: :lists.foldl/313231324warning: Phoenix.LiveView.Engine.handle_text/2 is deprecated, implement handle_text/3 instead1325 (eex 1.20.3) lib/eex/compiler.ex:315: EEx.Compiler.compile/31326 (phoenix 1.5.15) lib/phoenix/template.ex:352: Phoenix.Template.compile/31327 (elixir 1.20.3) lib/enum.ex:1725: Enum."-map/2-lists^map/1-1-"/21328 (elixir 1.20.3) lib/enum.ex:1725: Enum."-map/2-lists^map/1-1-"/21329 (phoenix 1.5.15) lib/phoenix/template.ex:166: Phoenix.Template."MACRO-__before_compile__"/21330 (elixir 1.20.3) src/elixir_dispatch.erl:263: :elixir_dispatch.expand_macro_fun/713311332warning: Phoenix.LiveView.Engine.handle_text/2 is deprecated, implement handle_text/3 instead1333 (eex 1.20.3) lib/eex/compiler.ex:315: EEx.Compiler.compile/31334 (phoenix 1.5.15) lib/phoenix/template.ex:352: Phoenix.Template.compile/31335 (elixir 1.20.3) lib/enum.ex:1725: Enum."-map/2-lists^map/1-1-"/21336 (elixir 1.20.3) lib/enum.ex:1725: Enum."-map/2-lists^map/1-1-"/21337 (phoenix 1.5.15) lib/phoenix/template.ex:166: Phoenix.Template."MACRO-__before_compile__"/21338 (elixir 1.20.3) src/elixir_dispatch.erl:263: :elixir_dispatch.expand_macro_fun/7133913401341== Compilation error in file lib/spotlight_web/endpoint.ex ==1342** (ArgumentError) invalid :json_decoder option. The module Poison is not loaded and could not be found1343 (plug 1.20.3) lib/plug/parsers/json.ex:48: Plug.Parsers.JSON.validate_decoder!/11344 (plug 1.20.3) lib/plug/parsers/json.ex:35: Plug.Parsers.JSON.init/11345 (plug 1.20.3) lib/plug/parsers.ex:283: anonymous fn/2 in Plug.Parsers.convert_parsers/21346 (elixir 1.20.3) lib/enum.ex:1725: Enum."-map/2-lists^map/1-1-"/21347 (elixir 1.20.3) lib/enum.ex:1725: Enum."-map/2-lists^map/1-1-"/21348 (plug 1.20.3) lib/plug/parsers.ex:263: Plug.Parsers.init/11349 (plug 1.20.3) lib/plug/builder.ex:358: Plug.Builder.init_module_plug/41350 (plug 1.20.3) lib/plug/builder.ex:339: anonymous fn/5 in Plug.Builder.compile/31351could not compile dependency :spotlight, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile spotlight --force", update it with "mix deps.update spotlight" or clean it with "mix deps.clean spotlight"