Build log
nerves_system_bbb
holograf 0.0.1 · fail · run holograf-0.0.1-1790946026238
1792 of 1792 lines
1Resolving Hex dependencies...2Resolution completed in 0.375s3Unchanged: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 db_connection 2.10.218 decimal 3.1.119 ecto 3.14.220 ecto_sql 3.14.021 elixir_make 0.10.022 expo 1.1.123 gettext 0.26.224 holograf 0.0.125 interactive_cmd 0.1.426 jason 1.4.527 mime 2.0.728 nerves 2.0.0-pre.229 nerves_discovery 0.1.530 nerves_logging 0.2.431 nerves_runtime 0.13.1332 nerves_system_bbb 2.30.233 nerves_system_br 1.34.434 nerves_system_mangopi_mq_pro 0.17.235 nerves_system_qemu_aarch64 0.4.236 nerves_system_rpi0 2.1.237 nerves_system_rpi4 2.1.238 nerves_system_rpi5 2.1.239 nerves_system_trellis 0.5.040 nerves_system_x86_64 1.34.241 nerves_toolchain_aarch64_nerves_linux_gnu 15.3.142 nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.143 nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.144 nerves_toolchain_riscv64_nerves_linux_gnu 15.3.145 nerves_toolchain_x86_64_nerves_linux_musl 15.3.146 nerves_uevent 0.1.747 phoenix 1.5.15 VULNERABLE!48 GHSA-p8f7-22gq-m7j9 (HIGH)49 aka: CVE-2022-4297550 Phoenix before 1.6.14 mishandles check_origin wildcarding51 https://osv.dev/vulnerability/GHSA-p8f7-22gq-m7j952 phoenix_ecto 4.7.053 phoenix_html 2.14.3 VULNERABLE!54 GHSA-5g2h-9x5v-5h3x (MEDIUM)55 aka: CVE-2021-46871, GHSA-j3gg-r6gp-95q256 phoenix_html allows Cross-site Scripting in HEEx class attributes57 https://osv.dev/vulnerability/GHSA-5g2h-9x5v-5h3x58 phoenix_live_dashboard 0.4.059 phoenix_live_view 0.15.7 VULNERABLE!60 EEF-CVE-2026-64941 (LOW)61 aka: CVE-2026-64941, GHSA-36m4-rm57-3prf62 Open redirect in Phoenix.LiveView.validate_local_url!/2 via ASCII tab, LF and CR63 https://osv.dev/vulnerability/EEF-CVE-2026-6494164 phoenix_pubsub 2.3.065 plug 1.20.366 plug_cowboy 2.9.067 plug_crypto 1.2.568 postgrex 0.22.469 property_table 0.3.470 ranch 2.3.071 ring_logger 0.11.772 tablet 0.3.373 telemetry 0.4.374 telemetry_metrics 0.6.275 telemetry_poller 0.5.176 toolshed 0.5.077 uboot_env 1.0.278* Getting holograf (Hex package)79* Getting nerves (Hex package)80* Getting ring_logger (Hex package)81* Getting toolshed (Hex package)82* Getting nerves_runtime (Hex package)83* Getting nerves_system_bbb (Hex package)84* Getting nerves_system_mangopi_mq_pro (Hex package)85* Getting nerves_system_qemu_aarch64 (Hex package)86* Getting nerves_system_rpi0 (Hex package)87* Getting nerves_system_rpi4 (Hex package)88* Getting nerves_system_rpi5 (Hex package)89* Getting nerves_system_trellis (Hex package)90* Getting nerves_system_x86_64 (Hex package)91* Getting nerves_system_br (Hex package)92* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)93* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)94* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)95* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)96* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)97* Getting nerves_logging (Hex package)98* Getting nerves_uevent (Hex package)99* Getting uboot_env (Hex package)100* Getting elixir_make (Hex package)101* Getting property_table (Hex package)102* Getting circular_buffer (Hex package)103* Getting interactive_cmd (Hex package)104* Getting nerves_discovery (Hex package)105* Getting tablet (Hex package)106* Getting ecto_sql (Hex package)107* Getting gettext (Hex package)108* Getting jason (Hex package)109* Getting phoenix (Hex package)110* Getting phoenix_ecto (Hex package)111* Getting phoenix_html (Hex package)112* Getting phoenix_live_dashboard (Hex package)113* Getting plug_cowboy (Hex package)114* Getting postgrex (Hex package)115* Getting telemetry_metrics (Hex package)116* Getting telemetry_poller (Hex package)117* Getting telemetry (Hex package)118* Getting db_connection (Hex package)119* Getting decimal (Hex package)120* Getting cowboy (Hex package)121* Getting cowboy_telemetry (Hex package)122* Getting plug (Hex package)123* Getting mime (Hex package)124* Getting plug_crypto (Hex package)125* Getting cowlib (Hex package)126* Getting ranch (Hex package)127* Getting phoenix_live_view (Hex package)128* Getting ecto (Hex package)129* Getting phoenix_pubsub (Hex package)130* Getting expo (Hex package)131Found packages with security advisories, see above for details132You have added/upgraded packages you could sponsor, run `mix hex.sponsor` to learn more133==> nerves_system_br134Generated nerves_system_br app135==> mime136Compiling 1 file (.ex)137Generated mime app138==> circular_buffer139Compiling 1 file (.ex)140Generated circular_buffer app141==> plug_crypto142Compiling 5 files (.ex)143Generated plug_crypto app144==> nerves_compatibility_test145===> Analyzing applications...146===> Compiling ranch147==> tablet148Compiling 2 files (.ex)149Generated tablet app150==> elixir_make151Compiling 8 files (.ex)152Generated elixir_make app153==> nerves_logging154 CC kmsg_tailer.o155 LD kmsg_tailer156Compiling 5 files (.ex)157Generated nerves_logging app158==> nerves_compatibility_test159===> Analyzing applications...160===> Compiling cowlib161==> nerves_discovery162Compiling 5 files (.ex)163Generated nerves_discovery app164==> ring_logger165Compiling 7 files (.ex)166Generated ring_logger app167==> decimal168Compiling 4 files (.ex)169Generated decimal app170==> jason171Compiling 10 files (.ex)172Generated jason app173==> interactive_cmd174Compiling 1 file (.ex)175Generated interactive_cmd app176==> nerves177Compiling 65 files (.ex)178 warning: redefining module Mix.Tasks.Nerves.Init (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Mix.Tasks.Nerves.Init.beam)179 │180 6 │ defmodule Mix.Tasks.Nerves.Init do181 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~182 │183 └─ lib/mix/tasks/nerves.init.ex:6: Mix.Tasks.Nerves.Init (module)184185 warning: redefining module Nerves (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.beam)186 │187 6 │ defmodule Nerves do188 │ ~~~~~~~~~~~~~~~~~~~189 │190 └─ lib/nerves.ex:6: Nerves (module)191192 warning: redefining module Nerves.ArtifactResolver (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.ArtifactResolver.beam)193 │194 5 │ defmodule Nerves.ArtifactResolver do195 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~196 │197 └─ lib/nerves/artifact_resolver.ex:5: Nerves.ArtifactResolver (module)198199 warning: redefining module Nerves.BuildAction.AppModes (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.BuildAction.AppModes.beam)200 │201 6 │ defmodule Nerves.BuildAction.AppModes do202 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~203 │204 └─ lib/nerves/build_action/app_modes.ex:6: Nerves.BuildAction.AppModes (module)205206 warning: redefining module Nerves.BuildAction.CheckExecutables (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.BuildAction.CheckExecutables.beam)207 │208 5 │ defmodule Nerves.BuildAction.CheckExecutables do209 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~210 │211 └─ lib/nerves/build_action/check_executables.ex:5: Nerves.BuildAction.CheckExecutables (module)212213 warning: redefining module Nerves.BuildAction.Erlinit (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.BuildAction.Erlinit.beam)214 │215 8 │ defmodule Nerves.BuildAction.Erlinit do216 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~217 │218 └─ lib/nerves/build_action/erlinit.ex:8: Nerves.BuildAction.Erlinit (module)219220 warning: redefining module Nerves.BuildAction.Firmware (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.BuildAction.Firmware.beam)221 │222 5 │ defmodule Nerves.BuildAction.Firmware do223 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~224 │225 └─ lib/nerves/build_action/firmware.ex:5: Nerves.BuildAction.Firmware (module)226227 warning: redefining module Nerves.BuildAction.IExStartupCheck (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.BuildAction.IExStartupCheck.beam)228 │229 7 │ defmodule Nerves.BuildAction.IExStartupCheck do230 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~231 │232 └─ lib/nerves/build_action/iex_startup_check.ex:7: Nerves.BuildAction.IExStartupCheck (module)233234 warning: redefining module Nerves.BuildAction.NervesV1System (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1System.beam)235 │236 5 │ defmodule Nerves.BuildAction.NervesV1System do237 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~238 │239 └─ lib/nerves/build_action/nerves_v1_system.ex:5: Nerves.BuildAction.NervesV1System (module)240241 warning: redefining module Nerves.BuildAction.NervesV1Toolchain (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1Toolchain.beam)242 │243 5 │ defmodule Nerves.BuildAction.NervesV1Toolchain do244 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~245 │246 └─ lib/nerves/build_action/nerves_v1_toolchain.ex:5: Nerves.BuildAction.NervesV1Toolchain (module)247248 warning: redefining module Nerves.BuildAction.Rootfs (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.BuildAction.Rootfs.beam)249 │250 5 │ defmodule Nerves.BuildAction.Rootfs do251 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~252 │253 └─ lib/nerves/build_action/rootfs.ex:5: Nerves.BuildAction.Rootfs (module)254255 warning: redefining module Nerves.BuildAction.SortApps (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.BuildAction.SortApps.beam)256 │257 6 │ defmodule Nerves.BuildAction.SortApps do258 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~259 │260 └─ lib/nerves/build_action/sort_apps.ex:6: Nerves.BuildAction.SortApps (module)261262 warning: redefining module Nerves.BuildAction.StripAll (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.BuildAction.StripAll.beam)263 │264 5 │ defmodule Nerves.BuildAction.StripAll do265 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~266 │267 └─ lib/nerves/build_action/strip_all.ex:5: Nerves.BuildAction.StripAll (module)268269 warning: redefining module Nerves.BuildAction.Trimmer (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.BuildAction.Trimmer.beam)270 │271 5 │ defmodule Nerves.BuildAction.Trimmer do272 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~273 │274 └─ lib/nerves/build_action/trimmer.ex:5: Nerves.BuildAction.Trimmer (module)275276 warning: redefining module Nerves.BuildPlan (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.BuildPlan.beam)277 │278 5 │ defmodule Nerves.BuildPlan do279 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~280 │281 └─ lib/nerves/build_plan.ex:5: Nerves.BuildPlan (module)282283 warning: redefining module Nerves.BuildPlan.Checks (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.BuildPlan.Checks.beam)284 │285 5 │ defmodule Nerves.BuildPlan.Checks do286 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~287 │288 └─ lib/nerves/build_plan/checks.ex:5: Nerves.BuildPlan.Checks (module)289290 warning: redefining module Nerves.Container (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.Container.beam)291 │292 6 │ defmodule Nerves.Container do293 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~294 │295 └─ lib/nerves/container.ex:6: Nerves.Container (module)296297 warning: redefining module Nerves.Fingerprint (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.Fingerprint.beam)298 │299 5 │ defmodule Nerves.Fingerprint do300 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~301 │302 └─ lib/nerves/fingerprint.ex:5: Nerves.Fingerprint (module)303304 warning: redefining module Nerves.MixPackage (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.MixPackage.beam)305 │306 5 │ defmodule Nerves.MixPackage do307 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~308 │309 └─ lib/nerves/mix_package.ex:5: Nerves.MixPackage (module)310311 warning: redefining module Nerves.Paths (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.Paths.beam)312 │313 5 │ defmodule Nerves.Paths do314 │ ~~~~~~~~~~~~~~~~~~~~~~~~~315 │316 └─ lib/nerves/paths.ex:5: Nerves.Paths (module)317318 warning: redefining module Nerves.TargetTuple (current version loaded from /work/proj/_build/bbb/lib/nerves/ebin/Elixir.Nerves.TargetTuple.beam)319 │320 5 │ defmodule Nerves.TargetTuple do321 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~322 │323 └─ lib/nerves/target_tuple.ex:5: Nerves.TargetTuple (module)324325Generated nerves app326==> nerves_toolchain_armv7_nerves_linux_gnueabihf327Compiling 1 file (.ex)328Generated nerves_toolchain_armv7_nerves_linux_gnueabihf app329==> nerves_compatibility_test330===> Analyzing applications...331===> Compiling telemetry332==> telemetry_metrics333Compiling 7 files (.ex)334 warning: unused require Logger335 │336 391 │ require Logger337 │ ~338 │339 └─ lib/telemetry_metrics.ex:391:3340341Generated telemetry_metrics app342==> nerves_compatibility_test343===> Analyzing applications...344===> Compiling telemetry_poller345==> db_connection346Compiling 18 files (.ex)347Generated db_connection app348==> ecto349Compiling 56 files (.ex)350Generated ecto app351==> nerves_compatibility_test352===> Analyzing applications...353===> Compiling cowboy354==> expo355Compiling 2 files (.erl)356Compiling 22 files (.ex)357Generated expo app358==> gettext359Compiling 18 files (.ex)360 warning: unused require Gettext.Macros361 │362 594 │ require Gettext.Macros363 │ ~364 │365 └─ lib/gettext.ex:594:3366367 warning: the following clause is redundant:368369 defp ensure_empty_msgstr!(%Expo.Message.Plural{} = message)370371 it has type:372373 dynamic(%Expo.Message.Plural{})374375 previous clauses have already matched on the following types:376377 %Expo.Message.Singular{}378 %Expo.Message.Plural{}379380 │381 391 │ defp ensure_empty_msgstr!(%Message.Plural{} = message) do382 │ ~383 │384 └─ lib/gettext/extractor.ex:391:8: Gettext.Extractor.ensure_empty_msgstr!/1385386 warning: Kernel.ParallelCompiler.async/1 is deprecated. Use `pmap/2` instead387 │388 426 │ Kernel.ParallelCompiler.async(fn ->389 │ ~390 │391 └─ lib/gettext/compiler.ex:426:39: Gettext.Compiler.compile_po_files/3392393Generated gettext app394==> phoenix_pubsub395Compiling 12 files (.ex)396Generated phoenix_pubsub app397==> plug398Compiling 1 file (.erl)399Compiling 42 files (.ex)400Generated plug app401==> phoenix_html402Compiling 8 files (.ex)403 warning: using single-quoted strings to represent charlists is deprecated.404 Use ~c"" if you indeed want a charlist or use "" instead.405 You may run "mix format --migrate" to change all single-quoted406 strings to use the ~c sigil and fix this warning.407 │408 12 │ @anno (if :erlang.system_info(:otp_release) >= '19' do409 │ ~410 │411 └─ lib/phoenix_html/engine.ex:12:50412413 warning: the 1st pattern in clause will never match:414415 60416417 because it is expected to receive type:418419 dynamic(empty_list() or non_empty_list(term(), term()))420421 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())422423 type warning found at:424 │425 56 │ def to_iodata(?<), do: "<"426 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~427 │428 └─ lib/phoenix_html/safe.ex:56: Phoenix.HTML.Safe.List.to_iodata/1429430 warning: the 1st pattern in clause will never match:431432 62433434 because it is expected to receive type:435436 dynamic(empty_list() or non_empty_list(term(), term()))437438 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())439440 type warning found at:441 │442 57 │ def to_iodata(?>), do: ">"443 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~444 │445 └─ lib/phoenix_html/safe.ex:57: Phoenix.HTML.Safe.List.to_iodata/1446447 warning: the 1st pattern in clause will never match:448449 38450451 because it is expected to receive type:452453 dynamic(empty_list() or non_empty_list(term(), term()))454455 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())456457 type warning found at:458 │459 58 │ def to_iodata(?&), do: "&"460 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~461 │462 └─ lib/phoenix_html/safe.ex:58: Phoenix.HTML.Safe.List.to_iodata/1463464 warning: the 1st pattern in clause will never match:465466 34467468 because it is expected to receive type:469470 dynamic(empty_list() or non_empty_list(term(), term()))471472 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())473474 type warning found at:475 │476 59 │ def to_iodata(?"), do: """477 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~478 │479 └─ lib/phoenix_html/safe.ex:59: Phoenix.HTML.Safe.List.to_iodata/1480481 warning: the 1st pattern in clause will never match:482483 39484485 because it is expected to receive type:486487 dynamic(empty_list() or non_empty_list(term(), term()))488489 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())490491 type warning found at:492 │493 60 │ def to_iodata(?'), do: "'"494 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~495 │496 └─ lib/phoenix_html/safe.ex:60: Phoenix.HTML.Safe.List.to_iodata/1497498 warning: the 1st pattern in clause will never match:499500 {:safe, data}501502 because it is expected to receive type:503504 dynamic(empty_list() or non_empty_list(term(), term()))505506 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())507508 type warning found at:509 │510 76 │ def to_iodata({:safe, data}) do511 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~512 │513 └─ lib/phoenix_html/safe.ex:76: Phoenix.HTML.Safe.List.to_iodata/1514515 warning: the following clause is redundant:516517 def to_iodata(other)518519 it has type:520521 dynamic(empty_list() or non_empty_list(term(), term()))522523 previous clauses have already matched on the following types:524525 non_empty_list(term(), term())526 empty_list()527528 │529 80 │ def to_iodata(other) do530 │ ~531 │532 └─ lib/phoenix_html/safe.ex:80:7: Phoenix.HTML.Safe.List.to_iodata/1533534 warning: the 1st pattern in clause will never match:535536 h537538 because it is expected to receive type:539540 dynamic(empty_list() or non_empty_list(term(), term()))541542 where "h" was given the type:543544 # type: integer()545 # from: lib/phoenix_html/safe.ex:62:25546 is_integer(h)547548 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())549550 type warning found at:551 │552 62 │ def to_iodata(h) when is_integer(h) and h <= 255 do553 │ ~554 │555 └─ lib/phoenix_html/safe.ex:62:17: Phoenix.HTML.Safe.List.to_iodata/1556557 warning: the 1st pattern in clause will never match:558559 h560561 because it is expected to receive type:562563 dynamic(empty_list() or non_empty_list(term(), term()))564565 where "h" was given the type:566567 # type: integer()568 # from: lib/phoenix_html/safe.ex:66:25569 is_integer(h)570571 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())572573 type warning found at:574 │575 66 │ def to_iodata(h) when is_integer(h) do576 │ ~577 │578 └─ lib/phoenix_html/safe.ex:66:17: Phoenix.HTML.Safe.List.to_iodata/1579580 warning: the 1st pattern in clause will never match:581582 h583584 because it is expected to receive type:585586 dynamic(empty_list() or non_empty_list(term(), term()))587588 where "h" was given the type:589590 # type: binary()591 # from: lib/phoenix_html/safe.ex:72:25592 is_binary(h)593594 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())595596 type warning found at:597 │598 72 │ def to_iodata(h) when is_binary(h) do599 │ ~600 │601 └─ lib/phoenix_html/safe.ex:72:17: Phoenix.HTML.Safe.List.to_iodata/1602603Generated phoenix_html app604warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"605 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2606 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1607 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5608 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2609 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4610 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2611612==> postgrex613Compiling 70 files (.ex)614Generated postgrex app615==> ecto_sql616Compiling 25 files (.ex)617Generated ecto_sql app618warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"619 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2620 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1621 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5622 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2623 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4624 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2625626==> phoenix_ecto627Compiling 7 files (.ex)628Generated phoenix_ecto app629==> uboot_env630Compiling 5 files (.ex)631Generated uboot_env app632==> nerves_system_bbb633Generated nerves_system_bbb app634==> property_table635Compiling 8 files (.ex)636Generated property_table app637==> nerves_uevent638 CC uevent.o639 LD uevent640Compiling 5 files (.ex)641Generated nerves_uevent app642==> nerves_runtime643Compiling 14 files (.ex)644Generated nerves_runtime app645==> toolshed646Compiling 5 files (.ex)647Generated toolshed app648==> nerves_compatibility_test649===> Analyzing applications...650===> Compiling cowboy_telemetry651==> plug_cowboy652Compiling 5 files (.ex)653Generated plug_cowboy app654warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"655 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2656 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1657 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5658 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2659 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4660 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2661662==> phoenix663Compiling 66 files (.ex)664 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 operator665 │666 194 │ <<attr::size(prefix)-binary, ":unique">> -> attr667 │ ~668 │669 └─ lib/mix/phoenix/schema.ex:194:20: Mix.Phoenix.Schema.drop_unique/1670671 warning: using single-quoted strings to represent charlists is deprecated.672 Use ~c"" if you indeed want a charlist or use "" instead.673 You may run "mix format --migrate" to change all single-quoted674 strings to use the ~c sigil and fix this warning.675 │676 258 │ notBefore: {:utcTime, '#{not_before}000000Z'},677 │ ~678 │679 └─ lib/mix/tasks/phx.gen.cert.ex:258:33680681 warning: using single-quoted strings to represent charlists is deprecated.682 Use ~c"" if you indeed want a charlist or use "" instead.683 You may run "mix format --migrate" to change all single-quoted684 strings to use the ~c sigil and fix this warning.685 │686 259 │ notAfter: {:utcTime, '#{not_after}000000Z'}687 │ ~688 │689 └─ lib/mix/tasks/phx.gen.cert.ex:259:32690691 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead692 │693 55 │ Logger.warn(694 │ ~695 │696 └─ lib/phoenix/code_reloader/server.ex:55:20: Phoenix.CodeReloader.Server.handle_call/3697698 warning: unused require Logger699 │700 9 │ require Logger701 │ ~702 │703 └─ lib/phoenix/config.ex:9:3704705 warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.706707 This error happens when you have function calls without parentheses inside keywords. For example:708709 function(arg, one: nested_call a, b, c)710 function(arg, one: if expr, do: :this, else: :that)711712 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:713714 function(arg, one: if(expr, do: :this, else: :that))715 function(arg, one: nested_call(a, b, c))716717 Ambiguity found at:718 │719 1002 │ defp get_disposition_type(other), do: raise ArgumentError, "expected :disposition to be :attachment or :inline, got: #{inspect(other)}"720 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~721 │722 └─ lib/phoenix/controller.ex:1002723724 warning: unused require Logger725 │726 240 │ require Logger727 │ ~728 │729 └─ lib/phoenix/endpoint.ex:240:3730731 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead732 │733 1013 │ Logger.warn "send_download/3 has been invoked during an AJAX request. " <>734 │ ~735 │736 └─ lib/phoenix/controller.ex:1013:14: Phoenix.Controller.warn_if_ajax/1737738 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead739 │740 82 │ Logger.warn "Phoenix.Endpoint.CowboyAdapter is deprecated and it will be removed in next versions. " <>741 │ ~742 │743 └─ lib/phoenix/endpoint/cowboy_adapter.ex:82:12: Phoenix.Endpoint.CowboyAdapter.child_specs/2744745 warning: unused require Phoenix.Endpoint746 │747 6 │ require Phoenix.Endpoint748 │ ~749 │750 └─ lib/phoenix/controller.ex:6:3751752 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead753 │754 71 │ Logger.warn("no configuration found for otp_app #{inspect(otp_app)} and module #{inspect(mod)}")755 │ ~756 │757 └─ lib/phoenix/endpoint/supervisor.ex:71:20: Phoenix.Endpoint.Supervisor.init/1758759 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead760 │761 95 │ Logger.warn(":instrumenters configuration for #{inspect(mod)} is deprecated and has no effect")762 │ ~763 │764 └─ lib/phoenix/endpoint/supervisor.ex:95:14: Phoenix.Endpoint.Supervisor.init/1765766 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead767 │768 116 │ Logger.warn """769 │ ~770 │771 └─ lib/phoenix/endpoint/supervisor.ex:116:14: Phoenix.Endpoint.Supervisor.pubsub_children/2772773 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead774 │775 166 │ Logger.warn "Phoenix.Endpoint.CowboyHandler is deprecated, please use Phoenix.Endpoint.CowboyAdapter instead"776 │ ~777 │778 └─ lib/phoenix/endpoint/supervisor.ex:166:16: Phoenix.Endpoint.Supervisor.user_adapter/2779780 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead781 │782 170 │ Logger.warn "The :handler option in #{inspect endpoint} is deprecated, please use :adapter instead"783 │ ~784 │785 └─ lib/phoenix/endpoint/supervisor.ex:170:16: Phoenix.Endpoint.Supervisor.user_adapter/2786787 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead788 │789 346 │ Logger.warn("url: [host: ...] configuration value #{inspect(host)} for #{inspect(endpoint)} is invalid")790 │ ~791 │792 └─ lib/phoenix/endpoint/supervisor.ex:346:14: Phoenix.Endpoint.Supervisor.build_url/2793794 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 operator795 │796 46 │ <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix797 │ ~798 │799 └─ lib/phoenix/naming.ex:46:29: Phoenix.Naming.unsuffix/2800801 warning: using single-quoted strings to represent charlists is deprecated.802 Use ~c"" if you indeed want a charlist or use "" instead.803 You may run "mix format --migrate" to change all single-quoted804 strings to use the ~c sigil and fix this warning.805 │806 411 │ @anno (if :erlang.system_info(:otp_release) >= '19' do807 │ ~808 │809 └─ lib/phoenix/router.ex:411:50810811 warning: unused require Phoenix.Endpoint812 │813 19 │ require Phoenix.Endpoint814 │ ~815 │816 └─ lib/phoenix/endpoint/render_errors.ex:19:3817818 warning: using single-quoted strings to represent charlists is deprecated.819 Use ~c"" if you indeed want a charlist or use "" instead.820 You may run "mix format --migrate" to change all single-quoted821 strings to use the ~c sigil and fix this warning.822 │823 8 │ @anno (if :erlang.system_info(:otp_release) >= '19' do824 │ ~825 │826 └─ lib/phoenix/router/helpers.ex:8:50827828 warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.829830 This error happens when you have function calls without parentheses inside keywords. For example:831832 function(arg, one: nested_call a, b, c)833 function(arg, one: if expr, do: :this, else: :that)834835 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:836837 function(arg, one: if(expr, do: :this, else: :that))838 function(arg, one: nested_call(a, b, c))839840 Ambiguity found at:841 │842 71 │ unless actions -- supported_actions == [], do: raise ArgumentError, """843 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~844 │845 └─ lib/phoenix/router/resource.ex:71846847 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead848 │849 734 │ Logger.warn fn -> "Ignoring unmatched topic \"#{topic}\" in #{inspect(handler)}" end850 │ ~851 │852 └─ lib/phoenix/socket.ex:734:12: Phoenix.Socket.encode_ignore/2853854 warning: unused require Phoenix.Endpoint855 │856 6 │ require Phoenix.Endpoint857 │ ~858 │859 └─ lib/phoenix/channel/server.ex:6:3860861 warning: unused require Phoenix.Endpoint862 │863 188 │ require Phoenix.Endpoint864 │ ~865 │866 └─ lib/phoenix/socket.ex:188:3867868 warning: unused require Logger869 │870 93 │ require Logger871 │ ~872 │873 └─ lib/phoenix/token.ex:93:3874875 warning: using single-quoted strings to represent charlists is deprecated.876 Use ~c"" if you indeed want a charlist or use "" instead.877 You may run "mix format --migrate" to change all single-quoted878 strings to use the ~c sigil and fix this warning.879 │880 178 │ @anno (if :erlang.system_info(:otp_release) >= '19' do881 │ ~882 │883 └─ lib/phoenix/view.ex:178:50884885 warning: a struct for Plug.Conn is expected on struct update:886887 %Plug.Conn{conn | state: :sent}888889 but got type:890891 dynamic()892893 where "conn" was given the type:894895 # type: dynamic()896 # from: lib/phoenix/endpoint/render_errors.ex:57:17897 conn898899 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"900901 type warning found at:902 │903 61 │ %Plug.Conn{conn | state: :sent}904 │ ~905 │906 └─ lib/phoenix/endpoint/render_errors.ex:61:9: Phoenix.Endpoint.RenderErrors.__catch__/5907908 warning: a struct for Plug.Conn is expected on struct update:909910 %Plug.Conn{conn | query_params: %{}, params: %{}}911912 but got type:913914 dynamic(%{..., params: %Plug.Conn.Unfetched{}})915916 where "conn" was given the types:917918 # type: dynamic(%{..., params: term()})919 # from: lib/phoenix/endpoint/render_errors.ex:124:17920 conn.params921922 # type: dynamic(%{..., params: %Plug.Conn.Unfetched{}})923 # from: lib/phoenix/endpoint/render_errors.ex:124:17924 conn.params925926 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"927928 type warning found at:929 │930 125 │ %Plug.Conn.Unfetched{} -> %Plug.Conn{conn | query_params: %{}, params: %{}}931 │ ~932 │933 └─ lib/phoenix/endpoint/render_errors.ex:125:35: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1934935 warning: a struct for Plug.Conn is expected on struct update:936937 %Plug.Conn{conn | query_params: %{}, params: params}938939 but got type:940941 dynamic(%{..., params: not %Plug.Conn.Unfetched{}})942943 where "conn" was given the types:944945 # type: dynamic(%{..., params: term()})946 # from: lib/phoenix/endpoint/render_errors.ex:124:17947 conn.params948949 # type: dynamic(%{..., params: not %Plug.Conn.Unfetched{}})950 # from: lib/phoenix/endpoint/render_errors.ex:124:17951 conn.params952953 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"954955 type warning found at:956 │957 126 │ params -> %Plug.Conn{conn | query_params: %{}, params: params}958 │ ~959 │960 └─ lib/phoenix/endpoint/render_errors.ex:126:19: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1961962 warning: incompatible types given to socket_children/1:963964 socket_children(mod)965966 given types:967968 -dynamic(atom())-969970 but expected one of:971972 %{..., __sockets__: term()}973974 where "mod" was given the types:975976 # type: dynamic(atom() or binary())977 # from: lib/phoenix/endpoint/supervisor.ex:64:41978 defaults(otp_app, mod)979980 # type: dynamic(atom())981 # from: lib/phoenix/endpoint/supervisor.ex:68:16982 mod.init(:supervisor, env_conf)983984 type warning found at:985 │986 105 │ socket_children(mod) ++987 │ ~988 │989 └─ lib/phoenix/endpoint/supervisor.ex:105:7: Phoenix.Endpoint.Supervisor.init/1990991 warning: a struct for Plug.Conn is expected on struct update:992993 %Plug.Conn{conn | params: params}994995 but got type:996997 dynamic(%{..., params: map()})998999 where "conn" was given the type:10001001 # type: dynamic(%{..., params: map()})1002 # from: lib/phoenix/controller.ex:1040:171003 Map.get(conn.params, required_key)10041005 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"10061007 type warning found at:1008 │1009 1047 │ %Plug.Conn{conn | params: params}1010 │ ~1011 │1012 └─ lib/phoenix/controller.ex:1047:5: Phoenix.Controller.scrub_params/210131014Generated phoenix app1015warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1016 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21017 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11018 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51019 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21020 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41021 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/210221023==> phoenix_live_view1024Compiling 22 files (.ex)1025 warning: unused require Logger1026 │1027 25 │ require Logger1028 │ ~1029 │1030 └─ lib/phoenix_live_view/socket.ex:25:310311032 warning: unused require Phoenix.ChannelTest1033 │1034 4 │ require Phoenix.ChannelTest1035 │ ~1036 │1037 └─ lib/phoenix_live_view/test/upload_client.ex:4:310381039 warning: unused require Phoenix.ChannelTest1040 │1041 141 │ require Phoenix.ChannelTest1042 │ ~1043 │1044 └─ lib/phoenix_live_view/test/live_view_test.ex:141:310451046 warning: unused require Phoenix.ConnTest1047 │1048 140 │ require Phoenix.ConnTest1049 │ ~1050 │1051 └─ lib/phoenix_live_view/test/live_view_test.ex:140:310521053 warning: unused require Logger1054 │1055 6 │ require Logger1056 │ ~1057 │1058 └─ lib/phoenix_live_view/upload_channel.ex:6:310591060 warning: a struct for Phoenix.LiveView.Socket is expected on struct update:10611062 %Phoenix.LiveView.Socket{1063 socket1064 | private: Map.put(socket.private, :phoenix_live_layout, {mod, template})1065 }10661067 but got type:10681069 dynamic()10701071 where "socket" was given the type:10721073 # type: dynamic()1074 # from: lib/phoenix_live_view/utils.ex:464:211075 socket10761077 when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"10781079 type warning found at:1080 │1081 465 │ %Socket{socket | private: Map.put(socket.private, :phoenix_live_layout, {mod, template})}1082 │ ~1083 │1084 └─ lib/phoenix_live_view/utils.ex:465:5: Phoenix.LiveView.Utils.do_mount_opt/310851086 warning: a struct for Phoenix.LiveView.Socket is expected on struct update:10871088 %Phoenix.LiveView.Socket{socket | private: Map.put(socket.private, :phoenix_live_layout, false)}10891090 but got type:10911092 dynamic()10931094 where "socket" was given the type:10951096 # type: dynamic()1097 # from: lib/phoenix_live_view/utils.ex:468:211098 socket10991100 when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"11011102 type warning found at:1103 │1104 469 │ %Socket{socket | private: Map.put(socket.private, :phoenix_live_layout, false)}1105 │ ~1106 │1107 └─ lib/phoenix_live_view/utils.ex:469:5: Phoenix.LiveView.Utils.do_mount_opt/311081109 warning: a struct for Phoenix.LiveView.Socket is expected on struct update:11101111 %Phoenix.LiveView.Socket{1112 socket1113 | assigns: Map.merge(temp_assigns, socket.assigns),1114 private: Map.put(socket.private, :temporary_assigns, temp_assigns)1115 }11161117 but got type:11181119 dynamic()11201121 where "socket" was given the type:11221123 # type: dynamic()1124 # from: lib/phoenix_live_view/utils.ex:478:211125 socket11261127 when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"11281129 type warning found at:1130 │1131 485 │ %Socket{1132 │ ~1133 │1134 └─ lib/phoenix_live_view/utils.ex:485:5: Phoenix.LiveView.Utils.do_mount_opt/311351136 warning: a struct for Phoenix.LiveView.Socket is expected on struct update:11371138 %Phoenix.LiveView.Socket{1139 socket1140 | assigns: %Phoenix.LiveView.Socket.AssignsNotInSocket{__assigns__: assigns}1141 }11421143 but got type:11441145 dynamic(%{..., assigns: term(), changed: term()})11461147 where "socket" was given the type:11481149 # type: dynamic(%{..., assigns: term(), changed: term()})1150 # from: lib/phoenix_live_view/utils.ex:496:611151 %{assigns: assigns, changed: changed} = socket11521153 when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"11541155 type warning found at:1156 │1157 497 │ socket = %Socket{socket | assigns: %Socket.AssignsNotInSocket{__assigns__: assigns}}1158 │ ~1159 │1160 └─ lib/phoenix_live_view/utils.ex:497:14: Phoenix.LiveView.Utils.render_assigns/111611162 warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:11631164 %Phoenix.LiveView.UploadEntry{entry | preflighted?: true}11651166 but got type:11671168 dynamic()11691170 where "entry" was given the type:11711172 # type: dynamic()1173 # from: lib/phoenix_live_view/upload_config.ex:341:281174 entry <- conf.entries11751176 when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"11771178 type warning found at:1179 │1180 341 │ | entries: for(entry <- conf.entries, do: %UploadEntry{entry | preflighted?: true})1181 │ ~1182 │1183 └─ lib/phoenix_live_view/upload_config.ex:341:49: Phoenix.LiveView.UploadConfig.mark_preflighted/111841185 warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:11861187 %Phoenix.LiveView.UploadEntry{entry | valid?: true, uuid: generate_uuid()}11881189 but got type:11901191 dynamic()11921193 where "entry" was given the type:11941195 # type: dynamic()1196 # from: lib/phoenix_live_view/upload_config.ex:541:301197 entry11981199 when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"12001201 type warning found at:1202 │1203 542 │ entry = %UploadEntry{entry | valid?: true, uuid: generate_uuid()}1204 │ ~1205 │1206 └─ lib/phoenix_live_view/upload_config.ex:542:13: Phoenix.LiveView.UploadConfig.put_valid_entry/212071208 warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:12091210 %Phoenix.LiveView.UploadEntry{entry | valid?: false}12111212 but got type:12131214 dynamic()12151216 where "entry" was given the type:12171218 # type: dynamic()1219 # from: lib/phoenix_live_view/upload_config.ex:554:321220 entry12211222 when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"12231224 type warning found at:1225 │1226 555 │ entry = %UploadEntry{entry | valid?: false}1227 │ ~1228 │1229 └─ lib/phoenix_live_view/upload_config.ex:555:13: Phoenix.LiveView.UploadConfig.put_invalid_entry/312301231 warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:12321233 %Phoenix.LiveView.UploadEntry{entry | cancelled?: true}12341235 but got type:12361237 dynamic()12381239 where "entry" was given the type:12401241 # type: dynamic()1242 # from: lib/phoenix_live_view/upload_config.ex:638:421243 entry12441245 when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"12461247 type warning found at:1248 │1249 638 │ update_entry(conf, entry.ref, fn entry -> %UploadEntry{entry | cancelled?: true} end)1250 │ ~1251 │1252 └─ lib/phoenix_live_view/upload_config.ex:638:51: Phoenix.LiveView.UploadConfig.cancel_entry/212531254 warning: Logger.disable/1 is deprecated. Use Logger.put_process_level(pid, :none) instead1255 │1256 56 │ Logger.disable(self())1257 │ ~1258 │1259 └─ lib/phoenix_live_view/test/client_proxy.ex:56:12: Phoenix.LiveViewTest.ClientProxy.init/112601261 warning: a struct for Phoenix.LiveViewTest.ClientProxy is expected on struct update:12621263 %Phoenix.LiveViewTest.ClientProxy{view | rendered: rendered}12641265 but got type:12661267 dynamic(%{..., rendered: term()})12681269 where "view" was given the type:12701271 # type: dynamic(%{..., rendered: term()})1272 # from: lib/phoenix_live_view/test/client_proxy.ex:600:241273 Phoenix.LiveViewTest.DOM.merge_diff(view.rendered, diff)12741275 when defining the variable "view", you must also pattern match on "%Phoenix.LiveViewTest.ClientProxy{}"12761277 type warning found at:1278 │1279 601 │ new_view = %ClientProxy{view | rendered: rendered}1280 │ ~1281 │1282 └─ lib/phoenix_live_view/test/client_proxy.ex:601:20: Phoenix.LiveViewTest.ClientProxy.merge_rendered/312831284 warning: Plug.Conn.Query.decode_pair/2 is deprecated. Use decode_init/0, decode_each/2, and decode_done/2 instead1285 │1286 986 │ Plug.Conn.Query.decode_pair({name, DOM.attribute(selected, "value")}, acc)1287 │ ~1288 │1289 └─ lib/phoenix_live_view/test/client_proxy.ex:986:23: Phoenix.LiveViewTest.ClientProxy.form_defaults/31290 └─ lib/phoenix_live_view/test/client_proxy.ex:991:21: Phoenix.LiveViewTest.ClientProxy.form_defaults/31291 └─ lib/phoenix_live_view/test/client_proxy.ex:1001:27: Phoenix.LiveViewTest.ClientProxy.form_defaults/31292 └─ lib/phoenix_live_view/test/client_proxy.ex:1010:25: Phoenix.LiveViewTest.ClientProxy.form_defaults/312931294 warning: the following clause is redundant:12951296 def to_iodata(%_{} = struct)12971298 it has type:12991300 dynamic(%Phoenix.LiveView.Rendered{})13011302 previous clauses have already matched on the following types:13031304 %Phoenix.LiveView.Rendered{}13051306 │1307 126 │ def to_iodata(%_{} = struct) do1308 │ ~1309 │1310 └─ lib/phoenix_live_view/engine.ex:126:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/113111312 warning: the 1st pattern in clause will never match:13131314 nil13151316 because it is expected to receive type:13171318 dynamic(%Phoenix.LiveView.Rendered{})13191320 hint: defimpl for Phoenix.LiveView.Rendered requires its callbacks to match exclusively on %Phoenix.LiveView.Rendered{}13211322 type warning found at:1323 │1324 130 │ def to_iodata(nil) do1325 │ ~~~~~~~~~~~~~~~~~~~~~1326 │1327 └─ lib/phoenix_live_view/engine.ex:130: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/113281329 warning: the following clause is redundant:13301331 def to_iodata(other)13321333 it has type:13341335 dynamic(%Phoenix.LiveView.Rendered{})13361337 previous clauses have already matched on the following types:13381339 %Phoenix.LiveView.Rendered{}13401341 │1342 134 │ def to_iodata(other) do1343 │ ~1344 │1345 └─ lib/phoenix_live_view/engine.ex:134:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/113461347Generated phoenix_live_view app1348warning: Phoenix now requires you to explicitly list which engine to use1349for Phoenix JSON encoding. We recommend everyone to upgrade to1350Jason by setting in your config/config.exs:13511352 config :phoenix, :json_library, Jason13531354And then adding {:jason, "~> 1.0"} as a dependency.13551356If instead you would rather continue using Poison, then add to1357your config/config.exs:13581359 config :phoenix, :json_library, Poison13601361 (phoenix 1.5.15) lib/phoenix.ex:38: Phoenix.start/21362 (kernel 11.0.4) application_master.erl:299: :application_master.start_it_old/413631364warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1365 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21366 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11367 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51368 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21369 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41370 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/213711372==> phoenix_live_dashboard1373Compiling 36 files (.ex)1374 warning: using single-quoted strings to represent charlists is deprecated.1375 Use ~c"" if you indeed want a charlist or use "" instead.1376 You may run "mix format --migrate" to change all single-quoted1377 strings to use the ~c sigil and fix this warning.1378 │1379 41 │ '#Port' ++ rest = :erlang.port_to_list(ref)1380 │ ~1381 │1382 └─ lib/phoenix/live_dashboard/helpers.ex:41:513831384 warning: using single-quoted strings to represent charlists is deprecated.1385 Use ~c"" if you indeed want a charlist or use "" instead.1386 You may run "mix format --migrate" to change all single-quoted1387 strings to use the ~c sigil and fix this warning.1388 │1389 49 │ '#Ref' ++ rest = :erlang.ref_to_list(ref)1390 │ ~1391 │1392 └─ lib/phoenix/live_dashboard/helpers.ex:49:513931394warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1395 lib/phoenix/live_dashboard/pages/home_page.ex:176: Phoenix.LiveDashboard.HomePage.render/113961397warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1398 lib/phoenix/live_dashboard/pages/home_page.ex:184: Phoenix.LiveDashboard.HomePage.render/113991400warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1401 lib/phoenix/live_dashboard/pages/home_page.ex:192: Phoenix.LiveDashboard.HomePage.render/114021403warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1404 lib/phoenix/live_dashboard/pages/os_mon_page.ex:213: Phoenix.LiveDashboard.OSMonPage.render/114051406warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1407 lib/phoenix/live_dashboard/pages/os_mon_page.ex:235: Phoenix.LiveDashboard.OSMonPage.render/114081409 warning: using single-quoted strings to represent charlists is deprecated.1410 Use ~c"" if you indeed want a charlist or use "" instead.1411 You may run "mix format --migrate" to change all single-quoted1412 strings to use the ~c sigil and fix this warning.1413 │1414 397 │ @inet_ports ['tcp_inet', 'udp_inet', 'sctp_inet']1415 │ ~1416 │1417 └─ lib/phoenix/live_dashboard/system_info.ex:397:1614181419 warning: using single-quoted strings to represent charlists is deprecated.1420 Use ~c"" if you indeed want a charlist or use "" instead.1421 You may run "mix format --migrate" to change all single-quoted1422 strings to use the ~c sigil and fix this warning.1423 │1424 397 │ @inet_ports ['tcp_inet', 'udp_inet', 'sctp_inet']1425 │ ~1426 │1427 └─ lib/phoenix/live_dashboard/system_info.ex:397:2814281429 warning: using single-quoted strings to represent charlists is deprecated.1430 Use ~c"" if you indeed want a charlist or use "" instead.1431 You may run "mix format --migrate" to change all single-quoted1432 strings to use the ~c sigil and fix this warning.1433 │1434 397 │ @inet_ports ['tcp_inet', 'udp_inet', 'sctp_inet']1435 │ ~1436 │1437 └─ lib/phoenix/live_dashboard/system_info.ex:397:4014381439 warning: using single-quoted strings to represent charlists is deprecated.1440 Use ~c"" if you indeed want a charlist or use "" instead.1441 You may run "mix format --migrate" to change all single-quoted1442 strings to use the ~c sigil and fix this warning.1443 │1444 543 │ [{'none', 0, 0}] -> []1445 │ ~1446 │1447 └─ lib/phoenix/live_dashboard/system_info.ex:543:1114481449warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1450 lib/phoenix/live_dashboard/page_live.ex:211: Phoenix.LiveDashboard.PageLive.render_page/314511452warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1453 lib/phoenix/live_dashboard/page_live.ex:236: Phoenix.LiveDashboard.PageLive.live_modal/314541455warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1456 lib/phoenix/live_dashboard/components/nav_bar_component.ex:142: Phoenix.LiveDashboard.NavBarComponent.render_content/314571458warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1459 lib/phoenix/live_dashboard/components/card_usage_component.ex:7: Phoenix.LiveDashboard.CardUsageComponent.render/114601461 warning: incompatible types given to Phoenix.LiveView.Helpers.__live_component__/3:14621463 Phoenix.LiveView.Helpers.__live_component__(1464 component.__live__(),1465 Phoenix.LiveDashboard.ModalComponent,1466 nil1467 )14681469 given types:14701471 dynamic(), -Phoenix.LiveDashboard.ModalComponent-, nil14721473 but expected one of:14741475 (1476 %{..., kind: :component, module: term()},1477 empty_list() or map() or non_empty_list(term(), term()),1478 term()1479 )14801481 where "component" (context Phoenix.LiveView.Helpers) was given the types:14821483 # type: dynamic(not %Phoenix.LiveView.Socket{})1484 # from: lib/phoenix/live_dashboard/page_live.ex:2361485 component14861487 # type: dynamic(atom())1488 # from: lib/phoenix/live_dashboard/page_live.ex:2361489 component.__live__()14901491 type warning found at:1492 │1493 236 │ live_component(socket, Phoenix.LiveDashboard.ModalComponent, modal_opts)1494 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1495 │1496 └─ lib/phoenix/live_dashboard/page_live.ex:236: Phoenix.LiveDashboard.PageLive.live_modal/314971498 warning: the following clause will never match:14991500 %{__changed__: changed} when track_changes? ->15011502 because it attempts to match on the result of:15031504 assigns15051506 which has type:15071508 dynamic(%{text: term()})15091510 where "track_changes?" (context Phoenix.LiveView.Engine) was given the type:15111512 # type: dynamic(true)1513 # from: lib/phoenix/live_dashboard/page_live.ex:3121514 track_changes?15151516 type warning found at:1517 │1518 312 │ ~L"""1519 │ ~~~~~1520 │1521 └─ lib/phoenix/live_dashboard/page_live.ex:312: Phoenix.LiveDashboard.PageLive.maybe_link/315221523 warning: the following clause will never match:15241525 %{__changed__: changed} when track_changes? ->15261527 because it attempts to match on the result of:15281529 assigns15301531 which has type:15321533 dynamic(%{more_info_url: term(), text: term()})15341535 where "track_changes?" (context Phoenix.LiveView.Engine) was given the type:15361537 # type: dynamic(true)1538 # from: lib/phoenix/live_dashboard/page_live.ex:3221539 track_changes?15401541 type warning found at:1542 │1543 322 │ ~L"""1544 │ ~~~~~1545 │1546 └─ lib/phoenix/live_dashboard/page_live.ex:322: Phoenix.LiveDashboard.PageLive.maybe_link/315471548 warning: the following clause will never match:15491550 %{__changed__: changed} when track_changes? ->15511552 because it attempts to match on the result of:15531554 assigns15551556 which has type:15571558 dynamic(%{checked_param: binary()})15591560 where "track_changes?" (context Phoenix.LiveView.Engine) was given the type:15611562 # type: dynamic(true)1563 # from: lib/phoenix/live_dashboard/pages/request_logger_page.ex:1781564 track_changes?15651566 type warning found at:1567 │1568 178 │ ~L"""1569 │ ~~~~~1570 │1571 └─ lib/phoenix/live_dashboard/pages/request_logger_page.ex:178: Phoenix.LiveDashboard.RequestLoggerPage.autoscroll_checkbox/115721573 warning: incompatible types given to Phoenix.LiveView.Helpers.__live_component__/3:15741575 Phoenix.LiveView.Helpers.__live_component__(1576 component.__live__(),1577 Phoenix.LiveDashboard.ColorBarComponent,1578 nil1579 )15801581 given types:15821583 dynamic(), -Phoenix.LiveDashboard.ColorBarComponent-, nil15841585 but expected one of:15861587 (1588 %{..., kind: :component, module: term()},1589 empty_list() or map() or non_empty_list(term(), term()),1590 term()1591 )15921593 where "component" (context Phoenix.LiveView.Helpers) was given the types:15941595 # type: dynamic(not %Phoenix.LiveView.Socket{})1596 # from: lib/phoenix/live_dashboard/pages/home_page.ex:2061597 component15981599 # type: dynamic(atom())1600 # from: lib/phoenix/live_dashboard/pages/home_page.ex:2061601 component.__live__()16021603 type warning found at:1604 │1605 206 │ <%= live_component @socket, ColorBarComponent, data: memory_usage_sections_percent(@system_usage.memory, @system_usage.memory.total), csp_nonces: @csp_nonces, dom_id: "system_usage_memory_total" %>1606 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1607 │1608 └─ lib/phoenix/live_dashboard/pages/home_page.ex:206: Phoenix.LiveDashboard.HomePage.render/116091610 warning: incompatible types given to Phoenix.LiveView.Helpers.__live_component__/3:16111612 Phoenix.LiveView.Helpers.__live_component__(1613 component.__live__(),1614 Phoenix.LiveDashboard.ColorBarComponent,1615 nil1616 )16171618 given types:16191620 dynamic(), -Phoenix.LiveDashboard.ColorBarComponent-, nil16211622 but expected one of:16231624 (1625 %{..., kind: :component, module: term()},1626 empty_list() or map() or non_empty_list(term(), term()),1627 term()1628 )16291630 where "component" (context Phoenix.LiveView.Helpers) was given the types:16311632 # type: dynamic(not %Phoenix.LiveView.Socket{})1633 # from: lib/phoenix/live_dashboard/pages/os_mon_page.ex:1911634 component16351636 # type: dynamic(atom())1637 # from: lib/phoenix/live_dashboard/pages/os_mon_page.ex:1911638 component.__live__()16391640 type warning found at:1641 │1642 191 │ <%= live_component @socket, ColorBarComponent, dom_id: "cpu-#{num_cpu}", data: cpu_usage_sections(usage), title: "CPU #{num_cpu+1}", csp_nonces: @csp_nonces %>1643 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1644 │1645 └─ lib/phoenix/live_dashboard/pages/os_mon_page.ex:191: Phoenix.LiveDashboard.OSMonPage.render/116461647 warning: incompatible types given to Phoenix.LiveView.Helpers.__live_component__/3:16481649 Phoenix.LiveView.Helpers.__live_component__(1650 component.__live__(),1651 Phoenix.LiveDashboard.ChartComponent,1652 nil1653 )16541655 given types:16561657 dynamic(), -Phoenix.LiveDashboard.ChartComponent-, nil16581659 but expected one of:16601661 (1662 %{..., kind: :component, module: term()},1663 empty_list() or map() or non_empty_list(term(), term()),1664 term()1665 )16661667 where "component" (context Phoenix.LiveView.Helpers) was given the types:16681669 # type: dynamic(not %Phoenix.LiveView.Socket{})1670 # from: lib/phoenix/live_dashboard/pages/metrics_page.ex:761671 component16721673 # type: dynamic(atom())1674 # from: lib/phoenix/live_dashboard/pages/metrics_page.ex:761675 component.__live__()16761677 type warning found at:1678 │1679 76 │ <%= live_component @socket, ChartComponent, id: id, metric: metric %>1680 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1681 │1682 └─ lib/phoenix/live_dashboard/pages/metrics_page.ex:76: Phoenix.LiveDashboard.MetricsPage.render_metrics/116831684 warning: Logger.add_backend/1 is deprecated. Use LoggerBackends.add/2 from :logger_backends dependency1685 │1686 8 │ Logger.add_backend(Phoenix.LiveDashboard.LoggerPubSubBackend)1687 │ ~1688 │1689 └─ lib/phoenix/live_dashboard/application.ex:8:12: Phoenix.LiveDashboard.Application.start/216901691 warning: the following clause will never match:16921693 %{__changed__: changed} when track_changes? ->16941695 because it attempts to match on the result of:16961697 assigns16981699 which has type:17001701 dynamic(%{block: term()})17021703 where "track_changes?" (context Phoenix.LiveView.Engine) was given the type:17041705 # type: dynamic(true)1706 # from: lib/phoenix/live_dashboard/helpers.ex:2081707 track_changes?17081709 type warning found at:1710 │1711 208 │ ~L"""1712 │ ~~~~~1713 │1714 └─ lib/phoenix/live_dashboard/helpers.ex:208: Phoenix.LiveDashboard.Helpers.hint/117151716Generated phoenix_live_dashboard app1717warning: the :gettext compiler is no longer required in your mix.exs.17181719Please find the following line in your mix.exs and remove the :gettext entry:17201721 compilers: [..., :gettext, ...] ++ Mix.compilers(),17221723 (gettext 0.26.2) lib/mix/tasks/compile.gettext.ex:5: Mix.Tasks.Compile.Gettext.run/11724 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51725 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21726 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41727 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/21728 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/517291730==> holograf1731Compiling 20 files (.ex)1732 warning: variable "variants" is unused (if the variable is not meant to be used, prefix it with an underscore)1733 │1734 81 │ defp generate_function_body(variants) do1735 │ ~~~~~~~~1736 │1737 └─ lib/demo/holograf/transpiler/generator.ex:81:31: Holograf.Transpiler.Generator.generate_function_body/117381739 warning: variable "name" is unused (if the variable is not meant to be used, prefix it with an underscore)1740 │1741 73 │ defp bindings(%Variable{name: name} = var, path) do1742 │ ~~~~1743 │1744 └─ lib/demo/holograf/transpiler/transformer.ex:73:33: Holograf.Transpiler.Transformer.bindings/217451746 warning: variable "path" is unused (if the variable is not meant to be used, prefix it with an underscore)1747 │1748 83 │ defp bindings(_, path) do1749 │ ~~~~1750 │1751 └─ lib/demo/holograf/transpiler/transformer.ex:83:20: Holograf.Transpiler.Transformer.bindings/217521753 warning: clauses with the same name and arity (number of arguments) should be grouped together, "def transform/2" was previously defined (lib/demo/holograf/transpiler/transformer.ex:8)1754 │1755 89 │ def transform({:alias, _, [{:__aliases__, _, module}]}, _aliases) do1756 │ ~1757 │1758 └─ lib/demo/holograf/transpiler/transformer.ex:89:717591760 warning: clauses with the same name and arity (number of arguments) should be grouped together, "def transform/2" was previously defined (lib/demo/holograf/transpiler/transformer.ex:8)1761 │1762 149 │ def transform({name, _, nil}, _aliases) when is_atom(name) do1763 │ ~1764 │1765 └─ lib/demo/holograf/transpiler/transformer.ex:149:717661767warning: defining a Gettext backend by calling17681769 use Gettext, otp_app: ...17701771is deprecated. To define a backend, call:17721773 use Gettext.Backend, otp_app: :my_app17741775Then, instead of importing your backend, call this in your module:17761777 use Gettext, backend: MyApp.Gettext17781779 lib/demo_web/gettext.ex:23: DemoWeb.Gettext (module)178017811782== Compilation error in file lib/demo_web/endpoint.ex ==1783** (ArgumentError) invalid :json_decoder option. The module Poison is not loaded and could not be found1784 (plug 1.20.3) lib/plug/parsers/json.ex:48: Plug.Parsers.JSON.validate_decoder!/11785 (plug 1.20.3) lib/plug/parsers/json.ex:35: Plug.Parsers.JSON.init/11786 (plug 1.20.3) lib/plug/parsers.ex:283: anonymous fn/2 in Plug.Parsers.convert_parsers/21787 (elixir 1.20.3) lib/enum.ex:1725: Enum."-map/2-lists^map/1-1-"/21788 (elixir 1.20.3) lib/enum.ex:1725: Enum."-map/2-lists^map/1-1-"/21789 (plug 1.20.3) lib/plug/parsers.ex:263: Plug.Parsers.init/11790 (plug 1.20.3) lib/plug/builder.ex:358: Plug.Builder.init_module_plug/41791 (plug 1.20.3) lib/plug/builder.ex:339: anonymous fn/5 in Plug.Builder.compile/31792could not compile dependency :holograf, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile holograf --force", update it with "mix deps.update holograf" or clean it with "mix deps.clean holograf"