Build log
nerves_system_qemu_aarch64
prexent 0.2.1 · fail · run prexent-0.2.1-1791074204228
1608 of 1608 lines
1Resolving Hex dependencies...2Resolution completed in 0.22s3Unchanged: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 earmark 1.4.49 RETIRED! VULNERABLE!18 (deprecated) Earmark is no longer maintained. Migrate to a replacement, for example MDEx (https://hex.pm/packages/mdex).1920 EEF-CVE-2026-48591 (MEDIUM)21 aka: CVE-2026-48591, GHSA-52mm-h59v-f3c722 Stored XSS via unescaped HTML attribute values in earmark23 https://osv.dev/vulnerability/EEF-CVE-2026-4859124 elixir_make 0.10.025 erlexec 1.21.0 RETIRED!26 (deprecated) Deprecated27 exexec 0.2.028 expo 1.1.129 file_system 1.1.130 gettext 0.26.231 interactive_cmd 0.1.432 jason 1.4.533 mime 2.0.734 nerves 2.0.0-pre.235 nerves_discovery 0.1.536 nerves_logging 0.2.437 nerves_runtime 0.13.1338 nerves_system_bbb 2.30.239 nerves_system_br 1.34.440 nerves_system_mangopi_mq_pro 0.17.241 nerves_system_qemu_aarch64 0.4.242 nerves_system_rpi0 2.1.243 nerves_system_rpi4 2.1.244 nerves_system_rpi5 2.1.245 nerves_system_trellis 0.5.046 nerves_system_x86_64 1.34.247 nerves_toolchain_aarch64_nerves_linux_gnu 15.3.148 nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.149 nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.150 nerves_toolchain_riscv64_nerves_linux_gnu 15.3.151 nerves_toolchain_x86_64_nerves_linux_musl 15.3.152 nerves_uevent 0.1.753 phoenix 1.4.18 VULNERABLE!54 GHSA-p8f7-22gq-m7j9 (HIGH)55 aka: CVE-2022-4297556 Phoenix before 1.6.14 mishandles check_origin wildcarding57 https://osv.dev/vulnerability/GHSA-p8f7-22gq-m7j95859 EEF-CVE-2026-56812 (MEDIUM)60 aka: CVE-2026-56812, GHSA-63mc-hw7g-86rr61 Phoenix JavaScript presence client crashes on presence keys colliding with Object.prototype members in Presence.syncState/syncDiff62 https://osv.dev/vulnerability/EEF-CVE-2026-568126364 EEF-CVE-2026-56811 (HIGH)65 aka: CVE-2026-56811, GHSA-6983-jfq8-485w66 Phoenix transports do not limit channel joins per connection, enabling process-exhaustion denial of service67 https://osv.dev/vulnerability/EEF-CVE-2026-5681168 phoenix_html 2.13.4 VULNERABLE!69 GHSA-5g2h-9x5v-5h3x (MEDIUM)70 aka: CVE-2021-46871, GHSA-j3gg-r6gp-95q271 phoenix_html allows Cross-site Scripting in HEEx class attributes72 https://osv.dev/vulnerability/GHSA-5g2h-9x5v-5h3x73 phoenix_live_reload 1.7.074 phoenix_live_view 0.3.175 phoenix_pubsub 1.1.276 plug 1.20.377 plug_cowboy 2.9.078 plug_crypto 2.2.079 prexent 0.2.180 property_table 0.3.481 ranch 2.3.082 ring_logger 0.11.783 tablet 0.3.384 telemetry 0.4.385 toolshed 0.5.086 uboot_env 1.0.287* Getting prexent (Hex package)88* Getting nerves (Hex package)89* Getting ring_logger (Hex package)90* Getting toolshed (Hex package)91* Getting nerves_runtime (Hex package)92* Getting nerves_system_bbb (Hex package)93* Getting nerves_system_mangopi_mq_pro (Hex package)94* Getting nerves_system_qemu_aarch64 (Hex package)95* Getting nerves_system_rpi0 (Hex package)96* Getting nerves_system_rpi4 (Hex package)97* Getting nerves_system_rpi5 (Hex package)98* Getting nerves_system_trellis (Hex package)99* Getting nerves_system_x86_64 (Hex package)100* Getting nerves_system_br (Hex package)101* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)102* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)103* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)104* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)105* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)106* Getting nerves_logging (Hex package)107* Getting nerves_uevent (Hex package)108* Getting uboot_env (Hex package)109* Getting elixir_make (Hex package)110* Getting property_table (Hex package)111* Getting circular_buffer (Hex package)112* Getting interactive_cmd (Hex package)113* Getting nerves_discovery (Hex package)114* Getting tablet (Hex package)115* Getting earmark (Hex package)116* Getting exexec (Hex package)117* Getting gettext (Hex package)118* Getting jason (Hex package)119* Getting phoenix (Hex package)120* Getting phoenix_html (Hex package)121* Getting phoenix_live_reload (Hex package)122* Getting phoenix_live_view (Hex package)123* Getting phoenix_pubsub (Hex package)124* Getting plug_cowboy (Hex package)125* Getting cowboy (Hex package)126* Getting cowboy_telemetry (Hex package)127* Getting plug (Hex package)128* Getting mime (Hex package)129* Getting plug_crypto (Hex package)130* Getting telemetry (Hex package)131* Getting cowlib (Hex package)132* Getting ranch (Hex package)133* Getting file_system (Hex package)134* Getting expo (Hex package)135* Getting erlexec (Hex package)136Found retired packages, see above for details137Found packages with security advisories, see above for details138You have added/upgraded packages you could sponsor, run `mix hex.sponsor` to learn more139==> nerves_system_br140Generated nerves_system_br app141==> file_system142Compiling 7 files (.ex)143Generated file_system app144==> mime145Compiling 1 file (.ex)146Generated mime app147==> circular_buffer148Compiling 1 file (.ex)149Generated circular_buffer app150==> jason151Compiling 10 files (.ex)152Generated jason app153==> plug_crypto154Compiling 5 files (.ex)155Generated plug_crypto app156==> nerves_compatibility_test157===> Analyzing applications...158===> Compiling ranch159==> tablet160Compiling 2 files (.ex)161Generated tablet app162==> nerves_compatibility_test163===> Fetching pc v1.15.0164===> Analyzing applications...165===> Compiling pc166===> Compiling c_src/ei++.cpp167===> Compiling c_src/exec.cpp168===> Compiling c_src/exec_impl.cpp169===> Linking /work/proj/_build/qemu_aarch64/lib/erlexec/priv/aarch64-nerves-linux-gnu/exec-port170===> Analyzing applications...171===> Compiling erlexec172==> exexec173Compiling 2 files (.ex)174Generated exexec app175==> elixir_make176Compiling 8 files (.ex)177Generated elixir_make app178==> nerves_logging179 CC kmsg_tailer.o180 LD kmsg_tailer181Compiling 5 files (.ex)182Generated nerves_logging app183==> earmark184Compiling 2 files (.xrl)185Compiling 1 file (.yrl)186Compiling 3 files (.erl)187Compiling 61 files (.ex)188 warning: unused require Logger189 │190 3 │ require Logger191 │ ~192 │193 └─ lib/earmark_parser/line_scanner.ex:3:3194195 warning: this clause of defp _maybe_remove_paras/2 is never used (or it will always fail/warn when invoked)196 │197 616 │ defp _maybe_remove_paras(ast, %Options{inner_html: true}) do198 │ ~199 │200 └─ lib/earmark/transform.ex:616:8: Earmark.Transform._maybe_remove_paras/2201202Generated earmark app203==> nerves_compatibility_test204===> Analyzing applications...205===> Compiling cowlib206==> nerves_discovery207Compiling 5 files (.ex)208Generated nerves_discovery app209==> ring_logger210Compiling 7 files (.ex)211Generated ring_logger app212==> interactive_cmd213Compiling 1 file (.ex)214Generated interactive_cmd app215==> nerves216Compiling 65 files (.ex)217 warning: redefining module Mix.Tasks.Nerves.Init (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Mix.Tasks.Nerves.Init.beam)218 │219 6 │ defmodule Mix.Tasks.Nerves.Init do220 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~221 │222 └─ lib/mix/tasks/nerves.init.ex:6: Mix.Tasks.Nerves.Init (module)223224 warning: redefining module Nerves (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.beam)225 │226 6 │ defmodule Nerves do227 │ ~~~~~~~~~~~~~~~~~~~228 │229 └─ lib/nerves.ex:6: Nerves (module)230231 warning: redefining module Nerves.ArtifactResolver (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.ArtifactResolver.beam)232 │233 5 │ defmodule Nerves.ArtifactResolver do234 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~235 │236 └─ lib/nerves/artifact_resolver.ex:5: Nerves.ArtifactResolver (module)237238 warning: redefining module Nerves.BuildAction.AppModes (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.AppModes.beam)239 │240 6 │ defmodule Nerves.BuildAction.AppModes do241 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~242 │243 └─ lib/nerves/build_action/app_modes.ex:6: Nerves.BuildAction.AppModes (module)244245 warning: redefining module Nerves.BuildAction.CheckExecutables (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.CheckExecutables.beam)246 │247 5 │ defmodule Nerves.BuildAction.CheckExecutables do248 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~249 │250 └─ lib/nerves/build_action/check_executables.ex:5: Nerves.BuildAction.CheckExecutables (module)251252 warning: redefining module Nerves.BuildAction.Erlinit (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.Erlinit.beam)253 │254 8 │ defmodule Nerves.BuildAction.Erlinit do255 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~256 │257 └─ lib/nerves/build_action/erlinit.ex:8: Nerves.BuildAction.Erlinit (module)258259 warning: redefining module Nerves.BuildAction.Firmware (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.Firmware.beam)260 │261 5 │ defmodule Nerves.BuildAction.Firmware do262 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~263 │264 └─ lib/nerves/build_action/firmware.ex:5: Nerves.BuildAction.Firmware (module)265266 warning: redefining module Nerves.BuildAction.IExStartupCheck (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.IExStartupCheck.beam)267 │268 7 │ defmodule Nerves.BuildAction.IExStartupCheck do269 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~270 │271 └─ lib/nerves/build_action/iex_startup_check.ex:7: Nerves.BuildAction.IExStartupCheck (module)272273 warning: redefining module Nerves.BuildAction.NervesV1System (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1System.beam)274 │275 5 │ defmodule Nerves.BuildAction.NervesV1System do276 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~277 │278 └─ lib/nerves/build_action/nerves_v1_system.ex:5: Nerves.BuildAction.NervesV1System (module)279280 warning: redefining module Nerves.BuildAction.NervesV1Toolchain (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1Toolchain.beam)281 │282 5 │ defmodule Nerves.BuildAction.NervesV1Toolchain do283 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~284 │285 └─ lib/nerves/build_action/nerves_v1_toolchain.ex:5: Nerves.BuildAction.NervesV1Toolchain (module)286287 warning: redefining module Nerves.BuildAction.Rootfs (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.Rootfs.beam)288 │289 5 │ defmodule Nerves.BuildAction.Rootfs do290 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~291 │292 └─ lib/nerves/build_action/rootfs.ex:5: Nerves.BuildAction.Rootfs (module)293294 warning: redefining module Nerves.BuildAction.SortApps (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.SortApps.beam)295 │296 6 │ defmodule Nerves.BuildAction.SortApps do297 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~298 │299 └─ lib/nerves/build_action/sort_apps.ex:6: Nerves.BuildAction.SortApps (module)300301 warning: redefining module Nerves.BuildAction.StripAll (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.StripAll.beam)302 │303 5 │ defmodule Nerves.BuildAction.StripAll do304 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~305 │306 └─ lib/nerves/build_action/strip_all.ex:5: Nerves.BuildAction.StripAll (module)307308 warning: redefining module Nerves.BuildAction.Trimmer (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.Trimmer.beam)309 │310 5 │ defmodule Nerves.BuildAction.Trimmer do311 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~312 │313 └─ lib/nerves/build_action/trimmer.ex:5: Nerves.BuildAction.Trimmer (module)314315 warning: redefining module Nerves.BuildPlan (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildPlan.beam)316 │317 5 │ defmodule Nerves.BuildPlan do318 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~319 │320 └─ lib/nerves/build_plan.ex:5: Nerves.BuildPlan (module)321322 warning: redefining module Nerves.BuildPlan.Checks (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildPlan.Checks.beam)323 │324 5 │ defmodule Nerves.BuildPlan.Checks do325 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~326 │327 └─ lib/nerves/build_plan/checks.ex:5: Nerves.BuildPlan.Checks (module)328329 warning: redefining module Nerves.Container (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.Container.beam)330 │331 6 │ defmodule Nerves.Container do332 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~333 │334 └─ lib/nerves/container.ex:6: Nerves.Container (module)335336 warning: redefining module Nerves.Fingerprint (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.Fingerprint.beam)337 │338 5 │ defmodule Nerves.Fingerprint do339 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~340 │341 └─ lib/nerves/fingerprint.ex:5: Nerves.Fingerprint (module)342343 warning: redefining module Nerves.MixPackage (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.MixPackage.beam)344 │345 5 │ defmodule Nerves.MixPackage do346 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~347 │348 └─ lib/nerves/mix_package.ex:5: Nerves.MixPackage (module)349350 warning: redefining module Nerves.Paths (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.Paths.beam)351 │352 5 │ defmodule Nerves.Paths do353 │ ~~~~~~~~~~~~~~~~~~~~~~~~~354 │355 └─ lib/nerves/paths.ex:5: Nerves.Paths (module)356357 warning: redefining module Nerves.TargetTuple (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.TargetTuple.beam)358 │359 5 │ defmodule Nerves.TargetTuple do360 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~361 │362 └─ lib/nerves/target_tuple.ex:5: Nerves.TargetTuple (module)363364Generated nerves app365==> nerves_toolchain_aarch64_nerves_linux_gnu366Compiling 1 file (.ex)367Generated nerves_toolchain_aarch64_nerves_linux_gnu app368==> nerves_system_qemu_aarch64369Compiling 1 file (.ex)370Generated nerves_system_qemu_aarch64 app371==> nerves_compatibility_test372===> Analyzing applications...373===> Compiling telemetry374===> Analyzing applications...375===> Compiling cowboy376==> expo377Compiling 2 files (.erl)378Compiling 22 files (.ex)379Generated expo app380==> gettext381Compiling 18 files (.ex)382 warning: unused require Gettext.Macros383 │384 594 │ require Gettext.Macros385 │ ~386 │387 └─ lib/gettext.ex:594:3388389 warning: Kernel.ParallelCompiler.async/1 is deprecated. Use `pmap/2` instead390 │391 426 │ Kernel.ParallelCompiler.async(fn ->392 │ ~393 │394 └─ lib/gettext/compiler.ex:426:39: Gettext.Compiler.compile_po_files/3395396 warning: the following clause is redundant:397398 defp ensure_empty_msgstr!(%Expo.Message.Plural{} = message)399400 it has type:401402 dynamic(%Expo.Message.Plural{})403404 previous clauses have already matched on the following types:405406 %Expo.Message.Singular{}407 %Expo.Message.Plural{}408409 │410 391 │ defp ensure_empty_msgstr!(%Message.Plural{} = message) do411 │ ~412 │413 └─ lib/gettext/extractor.ex:391:8: Gettext.Extractor.ensure_empty_msgstr!/1414415Generated gettext app416==> phoenix_pubsub417Compiling 13 files (.ex)418 warning: single quotes around atoms are deprecated. Use double quotes instead419 │420 160 │ |> :ets.select([{{:'$1', :_}, [], [:'$1']}])421 │ ~422 │423 └─ lib/phoenix/pubsub/local.ex:160:23424425 warning: single quotes around atoms are deprecated. Use double quotes instead426 │427 160 │ |> :ets.select([{{:'$1', :_}, [], [:'$1']}])428 │ ~429 │430 └─ lib/phoenix/pubsub/local.ex:160:40431432 warning: unused require Logger433 │434 107 │ require Logger435 │ ~436 │437 └─ lib/phoenix/tracker.ex:107:3438439 warning: a struct for Phoenix.Tracker.State is expected on struct update:440441 %Phoenix.Tracker.State{delta | values: Map.put(delta.values, tag, {pid, topic, key, meta})}442443 but got type:444445 dynamic()446447 where "delta" was given the type:448449 # type: dynamic()450 # from: lib/phoenix/tracker/state.ex:461:36451 %Phoenix.Tracker.State{delta: delta} = state452453 when defining the variable "delta", you must also pattern match on "%Phoenix.Tracker.State{}"454455 type warning found at:456 │457 465 │ new_delta = %State{delta | values: Map.put(delta.values, tag, {pid, topic, key, meta})}458 │ ~459 │460 └─ lib/phoenix/tracker/state.ex:465:17: Phoenix.Tracker.State.do_add/5461462 warning: a struct for Phoenix.Tracker.Replica is expected on struct update:463464 %Phoenix.Tracker.Replica{replica | status: :permdown}465466 but got type:467468 dynamic()469470 where "replica" was given the type:471472 # type: dynamic()473 # from: lib/phoenix/tracker/replica.ex:72:17474 replica475476 when defining the variable "replica", you must also pattern match on "%Phoenix.Tracker.Replica{}"477478 type warning found at:479 │480 72 │ defp permdown(replica), do: %Replica{replica | status: :permdown}481 │ ~482 │483 └─ lib/phoenix/tracker/replica.ex:72:31: Phoenix.Tracker.Replica.permdown/1484485 warning: a struct for Phoenix.Tracker.State is expected on struct update:486487 %Phoenix.Tracker.State{delta | clouds: put_tag(delta.clouds, {rep, new_clock})}488489 but got type:490491 dynamic()492493 where "delta" was given the type:494495 # type: dynamic()496 # from: lib/phoenix/tracker/state.ex:541:99497 %Phoenix.Tracker.State{mode: :normal, replica: rep, clouds: clouds, context: ctx, delta: delta} =498 state499500 when defining the variable "delta", you must also pattern match on "%Phoenix.Tracker.State{}"501502 type warning found at:503 │504 547 │ delta: %State{delta | clouds: put_tag(delta.clouds, {rep, new_clock})}}505 │ ~506 │507 └─ lib/phoenix/tracker/state.ex:547:19: Phoenix.Tracker.State.bump_clock/1508509 warning: a struct for Phoenix.Tracker.Replica is expected on struct update:510511 %Phoenix.Tracker.Replica{replica | status: :down}512513 but got type:514515 dynamic()516517 where "replica" was given the type:518519 # type: dynamic()520 # from: lib/phoenix/tracker/replica.ex:74:13521 replica522523 when defining the variable "replica", you must also pattern match on "%Phoenix.Tracker.Replica{}"524525 type warning found at:526 │527 74 │ defp down(replica), do: %Replica{replica | status: :down}528 │ ~529 │530 └─ lib/phoenix/tracker/replica.ex:74:27: Phoenix.Tracker.Replica.down/1531532 warning: a struct for Phoenix.Tracker.Replica is expected on struct update:533534 %Phoenix.Tracker.Replica{replica | last_heartbeat_at: now_ms()}535536 but got type:537538 dynamic()539540 where "replica" was given the type:541542 # type: dynamic()543 # from: lib/phoenix/tracker/replica.ex:76:29544 replica545546 when defining the variable "replica", you must also pattern match on "%Phoenix.Tracker.Replica{}"547548 type warning found at:549 │550 77 │ %Replica{replica | last_heartbeat_at: now_ms()}551 │ ~552 │553 └─ lib/phoenix/tracker/replica.ex:77:5: Phoenix.Tracker.Replica.touch_last_heartbeat/1554555 warning: a struct for Phoenix.Tracker.State is expected on struct update:556557 %Phoenix.Tracker.State{delta | range: {start_clock, new_end}}558559 but got type:560561 dynamic(%{..., range: {term(), term()}})562563 where "delta" was given the type:564565 # type: dynamic(%{..., range: {term(), term()}})566 # from: lib/phoenix/tracker/state.ex:551:30567 {start_clock, end_clock} = delta.range568569 when defining the variable "delta", you must also pattern match on "%Phoenix.Tracker.State{}"570571 type warning found at:572 │573 555 │ delta: %State{delta | range: {start_clock, new_end}}}574 │ ~575 │576 └─ lib/phoenix/tracker/state.ex:555:19: Phoenix.Tracker.State.put_context/2577578 warning: Supervisor.Spec.worker/3 is deprecated. Use the new child specifications outlined in the Supervisor module instead579 │580 269 │ worker(Phoenix.Tracker.Shard, [tracker, tracker_opts, shard_opts],581 │ ~582 │583 └─ lib/phoenix/tracker.ex:269:9: Phoenix.Tracker.init/1584585 warning: Supervisor.Spec.supervise/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead586 │587 273 │ supervise(shards, strategy: :one_for_one,588 │ ~589 │590 └─ lib/phoenix/tracker.ex:273:5: Phoenix.Tracker.init/1591592 warning: :pg2.create/1 is undefined or private, this module was removed in OTP 24. Use 'pg' instead593 │594 43 │ :ok = :pg2.create(pg2_group)595 │ ~596 │597 └─ lib/phoenix/pubsub/pg2_server.ex:43:16: Phoenix.PubSub.PG2Server.init/1598599 warning: Supervisor.Spec.supervisor/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead600 │601 7 │ [supervisor(Phoenix.PubSub.PG2, pubsub)]602 │ ~603 │604 └─ lib/phoenix/pubsub/supervisor.ex:7:8: Phoenix.PubSub.Supervisor.start/2605606 warning: :pg2.join/2 is undefined or private, this module was removed in OTP 24. Use 'pg' instead607 │608 44 │ :ok = :pg2.join(pg2_group, self())609 │ ~610 │611 └─ lib/phoenix/pubsub/pg2_server.ex:44:16: Phoenix.PubSub.PG2Server.init/1612613 warning: Supervisor.Spec.supervisor/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead614 │615 93 │ supervisor(Phoenix.PubSub.LocalSupervisor, [server, pool_size, dispatch_rules]),616 │ ~617 │618 └─ lib/phoenix/pubsub/pg2.ex:93:7: Phoenix.PubSub.PG2.init/1619620 warning: :pg2.get_members/1 is undefined or private, this module was removed in OTP 24. Use 'pg' instead621 │622 57 │ :pg2.get_members(pg2_namespace(server_name))623 │ ~624 │625 └─ lib/phoenix/pubsub/pg2_server.ex:57:10: Phoenix.PubSub.PG2Server.get_members/1626627 warning: Supervisor.Spec.worker/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead628 │629 94 │ worker(Phoenix.PubSub.PG2Server, [server, pool_size])630 │ ~631 │632 └─ lib/phoenix/pubsub/pg2.ex:94:7: Phoenix.PubSub.PG2.init/1633634 warning: Supervisor.Spec.supervise/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead635 │636 97 │ supervise(children, strategy: :rest_for_one)637 │ ~638 │639 └─ lib/phoenix/pubsub/pg2.ex:97:5: Phoenix.PubSub.PG2.init/1640641 warning: Supervisor.Spec.worker/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead642 │643 35 │ worker(Phoenix.PubSub.GC, [gc_shard_name, local_shard_name]),644 │ ~645 │646 └─ lib/phoenix/pubsub/local_supervisor.ex:35:9: Phoenix.PubSub.LocalSupervisor.init/1647 └─ lib/phoenix/pubsub/local_supervisor.ex:36:9: Phoenix.PubSub.LocalSupervisor.init/1648649 warning: Supervisor.Spec.supervisor/3 is deprecated. Use the new child specifications outlined in the Supervisor module instead650 │651 39 │ supervisor(Supervisor, [shard_children, [strategy: :one_for_all]], id: shard)652 │ ~653 │654 └─ lib/phoenix/pubsub/local_supervisor.ex:39:7: Phoenix.PubSub.LocalSupervisor.init/1655656 warning: Supervisor.Spec.supervise/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead657 │658 42 │ supervise children, strategy: :one_for_one659 │ ~660 │661 └─ lib/phoenix/pubsub/local_supervisor.ex:42:5: Phoenix.PubSub.LocalSupervisor.init/1662663Generated phoenix_pubsub app664==> plug665Compiling 1 file (.erl)666Compiling 42 files (.ex)667Generated plug app668==> phoenix_html669Compiling 8 files (.ex)670 warning: using single-quoted strings to represent charlists is deprecated.671 Use ~c"" if you indeed want a charlist or use "" instead.672 You may run "mix format --migrate" to change all single-quoted673 strings to use the ~c sigil and fix this warning.674 │675 12 │ @anno (if :erlang.system_info(:otp_release) >= '19' do676 │ ~677 │678 └─ lib/phoenix_html/engine.ex:12:50679680 warning: the 1st pattern in clause will never match:681682 60683684 because it is expected to receive type:685686 dynamic(empty_list() or non_empty_list(term(), term()))687688 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())689690 type warning found at:691 │692 56 │ def to_iodata(?<), do: "<"693 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~694 │695 └─ lib/phoenix_html/safe.ex:56: Phoenix.HTML.Safe.List.to_iodata/1696697 warning: the 1st pattern in clause will never match:698699 62700701 because it is expected to receive type:702703 dynamic(empty_list() or non_empty_list(term(), term()))704705 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())706707 type warning found at:708 │709 57 │ def to_iodata(?>), do: ">"710 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~711 │712 └─ lib/phoenix_html/safe.ex:57: Phoenix.HTML.Safe.List.to_iodata/1713714 warning: function handle_text/3 required by behaviour EEx.Engine is not implemented (in module Phoenix.HTML.Engine)715 │716 1 │ defmodule Phoenix.HTML.Engine do717 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~718 │719 └─ lib/phoenix_html/engine.ex:1: Phoenix.HTML.Engine (module)720721 warning: got "@impl true" for function handle_text/2 but no behaviour specifies such callback. The known callbacks are:722723 * EEx.Engine.handle_begin/1 (function)724 * EEx.Engine.handle_body/1 (function)725 * EEx.Engine.handle_end/1 (function)726 * EEx.Engine.handle_expr/3 (function)727 * EEx.Engine.handle_text/3 (function)728 * EEx.Engine.init/1 (function)729730 │731 52 │ def handle_text(state, text) do732 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~733 │734 └─ lib/phoenix_html/engine.ex:52: Phoenix.HTML.Engine (module)735736 warning: the 1st pattern in clause will never match:737738 38739740 because it is expected to receive type:741742 dynamic(empty_list() or non_empty_list(term(), term()))743744 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())745746 type warning found at:747 │748 58 │ def to_iodata(?&), do: "&"749 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~750 │751 └─ lib/phoenix_html/safe.ex:58: Phoenix.HTML.Safe.List.to_iodata/1752753 warning: the 1st pattern in clause will never match:754755 34756757 because it is expected to receive type:758759 dynamic(empty_list() or non_empty_list(term(), term()))760761 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())762763 type warning found at:764 │765 59 │ def to_iodata(?"), do: """766 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~767 │768 └─ lib/phoenix_html/safe.ex:59: Phoenix.HTML.Safe.List.to_iodata/1769770 warning: the 1st pattern in clause will never match:771772 39773774 because it is expected to receive type:775776 dynamic(empty_list() or non_empty_list(term(), term()))777778 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())779780 type warning found at:781 │782 60 │ def to_iodata(?'), do: "'"783 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~784 │785 └─ lib/phoenix_html/safe.ex:60: Phoenix.HTML.Safe.List.to_iodata/1786787 warning: the 1st pattern in clause will never match:788789 {:safe, data}790791 because it is expected to receive type:792793 dynamic(empty_list() or non_empty_list(term(), term()))794795 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())796797 type warning found at:798 │799 76 │ def to_iodata({:safe, data}) do800 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~801 │802 └─ lib/phoenix_html/safe.ex:76: Phoenix.HTML.Safe.List.to_iodata/1803804 warning: the following clause is redundant:805806 def to_iodata(other)807808 it has type:809810 dynamic(empty_list() or non_empty_list(term(), term()))811812 previous clauses have already matched on the following types:813814 non_empty_list(term(), term())815 empty_list()816817 │818 80 │ def to_iodata(other) do819 │ ~820 │821 └─ lib/phoenix_html/safe.ex:80:7: Phoenix.HTML.Safe.List.to_iodata/1822823 warning: the 1st pattern in clause will never match:824825 h826827 because it is expected to receive type:828829 dynamic(empty_list() or non_empty_list(term(), term()))830831 where "h" was given the type:832833 # type: integer()834 # from: lib/phoenix_html/safe.ex:62:25835 is_integer(h)836837 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())838839 type warning found at:840 │841 62 │ def to_iodata(h) when is_integer(h) and h <= 255 do842 │ ~843 │844 └─ lib/phoenix_html/safe.ex:62:17: Phoenix.HTML.Safe.List.to_iodata/1845846 warning: the 1st pattern in clause will never match:847848 h849850 because it is expected to receive type:851852 dynamic(empty_list() or non_empty_list(term(), term()))853854 where "h" was given the type:855856 # type: integer()857 # from: lib/phoenix_html/safe.ex:66:25858 is_integer(h)859860 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())861862 type warning found at:863 │864 66 │ def to_iodata(h) when is_integer(h) do865 │ ~866 │867 └─ lib/phoenix_html/safe.ex:66:17: Phoenix.HTML.Safe.List.to_iodata/1868869 warning: the 1st pattern in clause will never match:870871 h872873 because it is expected to receive type:874875 dynamic(empty_list() or non_empty_list(term(), term()))876877 where "h" was given the type:878879 # type: binary()880 # from: lib/phoenix_html/safe.ex:72:25881 is_binary(h)882883 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())884885 type warning found at:886 │887 72 │ def to_iodata(h) when is_binary(h) do888 │ ~889 │890 └─ lib/phoenix_html/safe.ex:72:17: Phoenix.HTML.Safe.List.to_iodata/1891892Generated phoenix_html app893==> uboot_env894Compiling 5 files (.ex)895Generated uboot_env app896==> property_table897Compiling 8 files (.ex)898Generated property_table app899==> nerves_uevent900 CC uevent.o901 LD uevent902Compiling 5 files (.ex)903Generated nerves_uevent app904==> nerves_runtime905Compiling 14 files (.ex)906Generated nerves_runtime app907==> toolshed908Compiling 5 files (.ex)909Generated toolshed app910==> nerves_compatibility_test911===> Analyzing applications...912===> Compiling cowboy_telemetry913==> plug_cowboy914Compiling 5 files (.ex)915Generated plug_cowboy app916warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"917 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2918 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1919 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5920 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2921 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4922 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2923924==> phoenix925Compiling 67 files (.ex)926 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 operator927 │928 190 │ <<attr::size(prefix)-binary, ":unique">> -> attr929 │ ~930 │931 └─ lib/mix/phoenix/schema.ex:190:20: Mix.Phoenix.Schema.drop_unique/1932933 warning: using single-quoted strings to represent charlists is deprecated.934 Use ~c"" if you indeed want a charlist or use "" instead.935 You may run "mix format --migrate" to change all single-quoted936 strings to use the ~c sigil and fix this warning.937 │938 258 │ notBefore: {:utcTime, '#{not_before}000000Z'},939 │ ~940 │941 └─ lib/mix/tasks/phx.gen.cert.ex:258:33942943 warning: using single-quoted strings to represent charlists is deprecated.944 Use ~c"" if you indeed want a charlist or use "" instead.945 You may run "mix format --migrate" to change all single-quoted946 strings to use the ~c sigil and fix this warning.947 │948 259 │ notAfter: {:utcTime, '#{not_after}000000Z'}949 │ ~950 │951 └─ lib/mix/tasks/phx.gen.cert.ex:259:32952953 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead954 │955 55 │ Logger.warn(956 │ ~957 │958 └─ lib/phoenix/code_reloader/server.ex:55:20: Phoenix.CodeReloader.Server.handle_call/3959960 warning: unused require Logger961 │962 9 │ require Logger963 │ ~964 │965 └─ lib/phoenix/config.ex:9:3966967 warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.968969 This error happens when you have function calls without parentheses inside keywords. For example:970971 function(arg, one: nested_call a, b, c)972 function(arg, one: if expr, do: :this, else: :that)973974 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:975976 function(arg, one: if(expr, do: :this, else: :that))977 function(arg, one: nested_call(a, b, c))978979 Ambiguity found at:980 │981 1006 │ defp get_disposition_type(other), do: raise ArgumentError, "expected :disposition to be :attachment or :inline, got: #{inspect(other)}"982 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~983 │984 └─ lib/phoenix/controller.ex:1006985986 warning: unused require Logger987 │988 282 │ require Logger989 │ ~990 │991 └─ lib/phoenix/endpoint.ex:282:3992993 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead994 │995 35 │ Logger.warn(996 │ ~997 │998 └─ lib/phoenix/endpoint/supervisor.ex:35:20: Phoenix.Endpoint.Supervisor.init/19991000 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1001 │1002 121 │ Logger.warn "Phoenix.Endpoint.CowboyHandler is deprecated, please use Phoenix.Endpoint.CowboyAdapter instead"1003 │ ~1004 │1005 └─ lib/phoenix/endpoint/supervisor.ex:121:16: Phoenix.Endpoint.Supervisor.user_adapter/210061007 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1008 │1009 125 │ Logger.warn "The :handler option in #{inspect endpoint} is deprecated, please use :adapter instead"1010 │ ~1011 │1012 └─ lib/phoenix/endpoint/supervisor.ex:125:16: Phoenix.Endpoint.Supervisor.user_adapter/210131014 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1015 │1016 138 │ Logger.warn("""1017 │ ~1018 │1019 └─ lib/phoenix/endpoint/supervisor.ex:138:12: Phoenix.Endpoint.Supervisor.warn_on_different_adapter_version/310201021 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 operator1022 │1023 46 │ <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix1024 │ ~1025 │1026 └─ lib/phoenix/naming.ex:46:29: Phoenix.Naming.unsuffix/210271028 warning: using single-quoted strings to represent charlists is deprecated.1029 Use ~c"" if you indeed want a charlist or use "" instead.1030 You may run "mix format --migrate" to change all single-quoted1031 strings to use the ~c sigil and fix this warning.1032 │1033 339 │ @anno (if :erlang.system_info(:otp_release) >= '19' do1034 │ ~1035 │1036 └─ lib/phoenix/router.ex:339:5010371038 warning: using single-quoted strings to represent charlists is deprecated.1039 Use ~c"" if you indeed want a charlist or use "" instead.1040 You may run "mix format --migrate" to change all single-quoted1041 strings to use the ~c sigil and fix this warning.1042 │1043 8 │ @anno (if :erlang.system_info(:otp_release) >= '19' do1044 │ ~1045 │1046 └─ lib/phoenix/router/helpers.ex:8:5010471048 warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.10491050 This error happens when you have function calls without parentheses inside keywords. For example:10511052 function(arg, one: nested_call a, b, c)1053 function(arg, one: if expr, do: :this, else: :that)10541055 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:10561057 function(arg, one: if(expr, do: :this, else: :that))1058 function(arg, one: nested_call(a, b, c))10591060 Ambiguity found at:1061 │1062 71 │ unless actions -- supported_actions == [], do: raise ArgumentError, """1063 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1064 │1065 └─ lib/phoenix/router/resource.ex:7110661067 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1068 │1069 1017 │ Logger.warn "send_download/3 has been invoked during an AJAX request. " <>1070 │ ~1071 │1072 └─ lib/phoenix/controller.ex:1017:14: Phoenix.Controller.warn_if_ajax/110731074 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1075 │1076 781 │ Logger.warn fn -> "Ignoring unmatched topic \"#{topic}\" in #{inspect(handler)}" end1077 │ ~1078 │1079 └─ lib/phoenix/socket.ex:781:12: Phoenix.Socket.encode_ignore/210801081 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1082 │1083 266 │ Logger.warn fn -> "Ignoring unmatched topic \"#{msg.topic}\" in #{inspect(socket.handler)}" end1084 │ ~1085 │1086 └─ lib/phoenix/socket/transport.ex:266:12: Phoenix.Socket.Transport.reply_ignore/210871088 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1089 │1090 328 │ Logger.warn(1091 │ ~1092 │1093 └─ lib/phoenix/token.ex:328:12: Phoenix.Token.expired?/210941095 warning: using single-quoted strings to represent charlists is deprecated.1096 Use ~c"" if you indeed want a charlist or use "" instead.1097 You may run "mix format --migrate" to change all single-quoted1098 strings to use the ~c sigil and fix this warning.1099 │1100 177 │ @anno (if :erlang.system_info(:otp_release) >= '19' do1101 │ ~1102 │1103 └─ lib/phoenix/view.ex:177:5011041105 warning: Supervisor.Spec.worker/3 is deprecated. Use the new child specifications outlined in the Supervisor module instead1106 │1107 11 │ worker(Phoenix.Transports.LongPoll.Server, [], restart: :temporary)1108 │ ~1109 │1110 └─ lib/phoenix/transports/long_poll_server.ex:11:7: Phoenix.Transports.LongPoll.Supervisor.init/111111112 warning: Supervisor.Spec.supervise/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead1113 │1114 14 │ supervise(children, strategy: :simple_one_for_one)1115 │ ~1116 │1117 └─ lib/phoenix/transports/long_poll_server.ex:14:5: Phoenix.Transports.LongPoll.Supervisor.init/111181119 warning: expected a module (an atom) when invoking config/1 in expression:11201121 endpoint.config(:endpoint_id)11221123 where "endpoint" was given the type:11241125 # type: dynamic(%{..., __pubsub_server__: atom()})1126 # from: lib/phoenix/transports/long_poll.ex:148:101127 verify_token(endpoint, token, opts)11281129 type warning found at:1130 │1131 150 │ server_ref = server_ref(endpoint.config(:endpoint_id), id, pid, priv_topic)1132 │ ~1133 │1134 └─ lib/phoenix/transports/long_poll.ex:150:42: Phoenix.Transports.LongPoll.resume_session/311351136 warning: unknown key .__pubsub_server__ in expression:11371138 endpoint.__pubsub_server__11391140 the given type does not have the given key:11411142 dynamic(1143 %Phoenix.Socket{1144 assigns: term(),1145 channel: term(),1146 channel_pid: term(),1147 endpoint: atom(),1148 handler: term(),1149 id: term(),1150 joined: term(),1151 join_ref: term(),1152 private: term(),1153 pubsub_server: term(),1154 ref: term(),1155 serializer: term(),1156 topic: term(),1157 transport: term(),1158 transport_pid: term()1159 } or1160 %Plug.Conn{1161 adapter: term(),1162 assigns: term(),1163 body_params: term(),1164 cookies: term(),1165 halted: term(),1166 host: term(),1167 method: term(),1168 owner: term(),1169 params: term(),1170 path_info: term(),1171 path_params: term(),1172 port: term(),1173 private: term(),1174 query_params: term(),1175 query_string: term(),1176 remote_ip: term(),1177 req_cookies: term(),1178 req_headers: term(),1179 request_path: term(),1180 resp_body: term(),1181 resp_cookies: term(),1182 resp_headers: term(),1183 scheme: term(),1184 script_name: term(),1185 secret_key_base: term(),1186 state: term(),1187 status: term()1188 } or atom() or binary()1189 )11901191 where "endpoint" was given the type:11921193 # type: dynamic(%Phoenix.Socket{endpoint: atom()} or %Plug.Conn{} or atom() or binary())1194 # from: lib/phoenix/transports/long_poll.ex:189:191195 Phoenix.Token.sign(endpoint, Atom.to_string(endpoint.__pubsub_server__), data, opts[:crypto])11961197 type warning found at:1198 │1199 189 │ Phoenix.Token.sign(endpoint, Atom.to_string(endpoint.__pubsub_server__), data, opts[:crypto])1200 │ ~~~~~~~~~~~~~~~~~1201 │1202 └─ lib/phoenix/transports/long_poll.ex:189:58: Phoenix.Transports.LongPoll.sign_token/312031204 warning: Plug.Crypto.safe_binary_to_term/1 is undefined or private1205 │1206 276 │ %{data: data, signed: signed} = Plug.Crypto.safe_binary_to_term(message)1207 │ ~1208 │1209 └─ lib/phoenix/token.ex:276:49: Phoenix.Token.decode/212101211 warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead1212 │1213 678 │ kind, error -> {:error, {kind, error, System.stacktrace()}}1214 │ ~1215 │1216 └─ lib/phoenix/test/conn_test.ex:678:52: Phoenix.ConnTest.wrap_request/112171218 warning: Supervisor.Spec.supervisor/3 is deprecated. Use the new child specifications outlined in the Supervisor module instead1219 │1220 59 │ supervisor(WorkerSupervisor, [worker, ref, i], id: i)1221 │ ~1222 │1223 └─ lib/phoenix/socket/pool_supervisor.ex:59:9: Phoenix.Socket.PoolSupervisor.init/112241225 warning: Supervisor.Spec.supervise/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead1226 │1227 62 │ supervise(children, strategy: :one_for_one)1228 │ ~1229 │1230 └─ lib/phoenix/socket/pool_supervisor.ex:62:5: Phoenix.Socket.PoolSupervisor.init/112311232 warning: Supervisor.Spec.worker/3 is deprecated. Use the new child specifications outlined in the Supervisor module instead1233 │1234 510 │ worker = worker(Phoenix.Channel.Server, [], worker_opts)1235 │ ~1236 │1237 └─ lib/phoenix/socket.ex:510:14: Phoenix.Socket.__child_spec__/212381239 warning: Supervisor.Spec.supervisor/3 is deprecated. Use the new child specifications outlined in the Supervisor module instead1240 │1241 512 │ supervisor(Phoenix.Socket.PoolSupervisor, [args], id: handler)1242 │ ~1243 │1244 └─ lib/phoenix/socket.ex:512:5: Phoenix.Socket.__child_spec__/212451246 warning: Supervisor.Spec.supervisor/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead1247 │1248 307 │ supervisor(Task.Supervisor, [[name: task_supervisor]]),1249 │ ~1250 │1251 └─ lib/phoenix/presence.ex:307:7: Phoenix.Presence.start_link/412521253 warning: Supervisor.Spec.worker/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead1254 │1255 308 │ worker(Phoenix.Tracker, [module, opts, opts])1256 │ ~1257 │1258 └─ lib/phoenix/presence.ex:308:7: Phoenix.Presence.start_link/412591260 warning: a struct for Plug.Conn is expected on struct update:12611262 %Plug.Conn{conn | params: params}12631264 but got type:12651266 dynamic(%{..., params: map()})12671268 where "conn" was given the type:12691270 # type: dynamic(%{..., params: map()})1271 # from: lib/phoenix/controller.ex:1044:171272 Map.get(conn.params, required_key)12731274 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"12751276 type warning found at:1277 │1278 1051 │ %Plug.Conn{conn | params: params}1279 │ ~1280 │1281 └─ lib/phoenix/controller.ex:1051:5: Phoenix.Controller.scrub_params/212821283 warning: a struct for Plug.Conn is expected on struct update:12841285 %Plug.Conn{conn | state: :sent}12861287 but got type:12881289 dynamic()12901291 where "conn" was given the type:12921293 # type: dynamic()1294 # from: lib/phoenix/endpoint/render_errors.ex:55:171295 conn12961297 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"12981299 type warning found at:1300 │1301 59 │ %Plug.Conn{conn | state: :sent}1302 │ ~1303 │1304 └─ lib/phoenix/endpoint/render_errors.ex:59:9: Phoenix.Endpoint.RenderErrors.__catch__/513051306 warning: a struct for Plug.Conn is expected on struct update:13071308 %Plug.Conn{conn | query_params: %{}, params: %{}}13091310 but got type:13111312 dynamic(%{..., params: %Plug.Conn.Unfetched{}})13131314 where "conn" was given the types:13151316 # type: dynamic(%{..., params: term()})1317 # from: lib/phoenix/endpoint/render_errors.ex:125:171318 conn.params13191320 # type: dynamic(%{..., params: %Plug.Conn.Unfetched{}})1321 # from: lib/phoenix/endpoint/render_errors.ex:125:171322 conn.params13231324 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"13251326 type warning found at:1327 │1328 126 │ %Plug.Conn.Unfetched{} -> %Plug.Conn{conn | query_params: %{}, params: %{}}1329 │ ~1330 │1331 └─ lib/phoenix/endpoint/render_errors.ex:126:35: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/113321333 warning: a struct for Plug.Conn is expected on struct update:13341335 %Plug.Conn{conn | query_params: %{}, params: params}13361337 but got type:13381339 dynamic(%{..., params: not %Plug.Conn.Unfetched{}})13401341 where "conn" was given the types:13421343 # type: dynamic(%{..., params: term()})1344 # from: lib/phoenix/endpoint/render_errors.ex:125:171345 conn.params13461347 # type: dynamic(%{..., params: not %Plug.Conn.Unfetched{}})1348 # from: lib/phoenix/endpoint/render_errors.ex:125:171349 conn.params13501351 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"13521353 type warning found at:1354 │1355 127 │ params -> %Plug.Conn{conn | query_params: %{}, params: params}1356 │ ~1357 │1358 └─ lib/phoenix/endpoint/render_errors.ex:127:19: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/113591360 warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead1361 │1362 298 │ metadata = %{kind: :error, error: e, stacktrace: System.stacktrace()}1363 │ ~1364 │1365 └─ lib/phoenix/router.ex:298:69: Phoenix.Router.__call__/21366 └─ lib/phoenix/router.ex:304:74: Phoenix.Router.__call__/21367 └─ lib/phoenix/router.ex:306:79: Phoenix.Router.__call__/213681369 warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead1370 │1371 30 │ {:upgrade, :protocol, __MODULE__, req, {:error, mfa, kind, reason, System.stacktrace()}}1372 │ ~1373 │1374 └─ lib/phoenix/endpoint/cowboy_websocket.ex:30:83: Phoenix.Endpoint.CowboyWebSocket.init/313751376 warning: Supervisor.Spec.supervisor/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead1377 │1378 75 │ [supervisor(adapter, [pub_conf[:name], pub_conf])]1379 │ ~1380 │1381 └─ lib/phoenix/endpoint/supervisor.ex:75:8: Phoenix.Endpoint.Supervisor.pubsub_children/213821383 warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead1384 │1385 49 │ case System.stacktrace() do1386 │ ~1387 │1388 └─ lib/phoenix/endpoint/cowboy2_handler.ex:49:19: Phoenix.Endpoint.Cowboy2Handler.init/413891390 warning: Supervisor.Spec.worker/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead1391 │1392 89 │ [worker(Phoenix.Config, args)]1393 │ ~1394 │1395 └─ lib/phoenix/endpoint/supervisor.ex:89:6: Phoenix.Endpoint.Supervisor.config_children/313961397 warning: the following clause will never match:13981399 [{^endpoint, :__handler__, _, _} | _] when reason == :undef and retry? ->14001401 because it attempts to match on the result of:14021403 System.stacktrace()14041405 which has type:14061407 empty_list()14081409 where "endpoint" was given the type:14101411 # type: dynamic()1412 # from: lib/phoenix/endpoint/cowboy2_handler.ex:18:191413 endpoint14141415 where "reason" was given the type:14161417 # type: dynamic(:undef)1418 # from: lib/phoenix/endpoint/cowboy2_handler.ex:52:591419 reason == :undef14201421 where "retry?" was given the type:14221423 # type: dynamic(true)1424 # from: lib/phoenix/endpoint/cowboy2_handler.ex:52:731425 retry?14261427 type warning found at:1428 │1429 52 │ [{^endpoint, :__handler__, _, _} | _] when reason == :undef and retry? ->1430 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1431 │1432 └─ lib/phoenix/endpoint/cowboy2_handler.ex:52: Phoenix.Endpoint.Cowboy2Handler.init/414331434 warning: Supervisor.Spec.worker/3 is deprecated. Use the new child specifications outlined in the Supervisor module instead1435 │1436 162 │ worker(Phoenix.Endpoint.Watcher, watcher_args(cmd, args),1437 │ ~1438 │1439 └─ lib/phoenix/endpoint/supervisor.ex:162:9: Phoenix.Endpoint.Supervisor.watcher_children/314401441 warning: expected a module (an atom) when invoking path/1 in expression:14421443 endpoint.path("/")14441445 where "endpoint" was given the type:14461447 # type: dynamic(%{..., host: term()})1448 # from: lib/phoenix/endpoint/supervisor.ex:369:141449 endpoint.host14501451 type warning found at:1452 │1453 370 │ endpoint.path("/")1454 │ ~1455 │1456 └─ lib/phoenix/endpoint/supervisor.ex:370:14: Phoenix.Endpoint.Supervisor.warmup/114571458 warning: expected a map or struct when accessing .__transports__ in expression:14591460 socket.__transports__14611462 where "socket" was given the type:14631464 # type: dynamic(atom())1465 # from: lib/phoenix/endpoint/cowboy_adapter.ex:115:131466 Code.ensure_loaded?(socket)14671468 hint: "var.field" (without parentheses) means "var" is a map() while "var.fun()" (with parentheses) means "var" is an atom()14691470 type warning found at:1471 │1472 116 │ socket.__transports__1473 │ ~1474 │1475 └─ lib/phoenix/endpoint/cowboy_adapter.ex:116:14: Phoenix.Endpoint.CowboyAdapter.deprecated_transports/114761477 warning: incompatible types given to socket_children/1:14781479 socket_children(mod)14801481 given types:14821483 -dynamic(atom())-14841485 but expected one of:14861487 %{..., __sockets__: term()}14881489 where "mod" was given the types:14901491 # type: dynamic(atom() or binary())1492 # from: lib/phoenix/endpoint/supervisor.ex:29:411493 config otp_app, mod14941495 # type: dynamic(atom())1496 # from: lib/phoenix/endpoint/supervisor.ex:32:161497 mod.init(:supervisor, default_conf)14981499 type warning found at:1500 │1501 58 │ socket_children(mod) ++1502 │ ~1503 │1504 └─ lib/phoenix/endpoint/supervisor.ex:58:7: Phoenix.Endpoint.Supervisor.init/115051506 warning: comparison between distinct types found:15071508 !Path.extname(file_path) == ".gz"15091510 given types:15111512 dynamic(boolean()) == binary()15131514 where "file_path" was given the type:15151516 # type: dynamic(binary() or empty_list() or non_empty_list(term(), term()))1517 # from: lib/phoenix/digester.ex:156:451518 Path.basename(file_path)15191520 While Elixir can compare across all types, you are comparing across types which are always disjoint, and the result is either always true or always false15211522 type warning found at:1523 │1524 157 │ !Path.extname(file_path) == ".gz"1525 │ ~1526 │1527 └─ lib/phoenix/digester.ex:157:32: Phoenix.Digester.uncompressed_digested_file?/115281529 warning: Supervisor.Spec.worker/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead1530 │1531 56 │ worker(Phoenix.CodeReloader.Server, []),1532 │ ~1533 │1534 └─ lib/phoenix.ex:56:7: Phoenix.start/215351536 warning: Supervisor.Spec.supervisor/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead1537 │1538 57 │ supervisor(Phoenix.Transports.LongPoll.Supervisor, [])1539 │ ~1540 │1541 └─ lib/phoenix.ex:57:7: Phoenix.start/215421543 warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead1544 │1545 81 │ IO.puts(Exception.format(kind, reason, System.stacktrace()))1546 │ ~1547 │1548 └─ lib/phoenix/code_reloader/server.ex:81:59: Phoenix.CodeReloader.Server.handle_call/315491550 warning: expected a map or struct when accessing .__phoenix_recompile__? in expression:15511552 mod.__phoenix_recompile__?15531554 where "mod" was given the type:15551556 # type: dynamic(atom())1557 # from: lib/mix/tasks/compile.phoenix.ex:34:121558 Code.ensure_loaded?(mod)15591560 hint: "var.field" (without parentheses) means "var" is a map() while "var.fun()" (with parentheses) means "var" is an atom()15611562 type warning found at:1563 │1564 36 │ mod.__phoenix_recompile__?1565 │ ~1566 │1567 └─ lib/mix/tasks/compile.phoenix.ex:36:13: Mix.Tasks.Compile.Phoenix.modules_for_recompilation/115681569Generated phoenix app1570==> phoenix_live_reload1571Compiling 5 files (.ex)1572Generated phoenix_live_reload app1573warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1574 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21575 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11576 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51577 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21578 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41579 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/215801581==> phoenix_live_view1582Compiling 15 files (.ex)1583 warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.15841585 This error happens when you have function calls without parentheses inside keywords. For example:15861587 function(arg, one: nested_call a, b, c)1588 function(arg, one: if expr, do: :this, else: :that)15891590 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:15911592 function(arg, one: if(expr, do: :this, else: :that))1593 function(arg, one: nested_call(a, b, c))15941595 Ambiguity found at:1596 │1597 1233 │ do: raise ArgumentError, "cannot invoke #{context} from a child LiveView"1598 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1599 │1600 └─ lib/phoenix_live_view.ex:1233160116021603== Compilation error in file lib/phoenix_live_view/socket.ex ==1604** (ArgumentError) unknown fields [:root_id] in :only when deriving the Inspect protocol for Phoenix.LiveView.Socket1605 (elixir 1.20.3) lib/inspect.ex:258: Inspect.validate_option/41606 (elixir 1.20.3) expanding macro: Inspect.__deriving__/21607 lib/phoenix_live_view/socket.ex:11: Phoenix.LiveView.Socket (module)1608could not compile dependency :phoenix_live_view, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile phoenix_live_view --force", update it with "mix deps.update phoenix_live_view" or clean it with "mix deps.clean phoenix_live_view"