kino_live_view_native

Build log

nerves_system_trellis

kino_live_view_native 0.2.2 · fail · run kino_live_view_native-0.2.2-1790967424002
1572 of 1572 lines
1Resolving Hex dependencies...2Resolution completed in 0.792s3Unchanged:4  castore 1.0.215  circular_buffer 1.1.06  cowboy 2.19.07  cowboy_telemetry 0.4.08  cowlib 2.20.0 VULNERABLE!9    EEF-CVE-2026-43966 (MEDIUM)10    aka: CVE-2026-43966, GHSA-w4f7-4cxr-rv3c11    HTTP Response Splitting via Non-VCHAR Bytes in cow_http_struct_hd:escape_string/212    https://osv.dev/vulnerability/EEF-CVE-2026-439661314    EEF-CVE-2026-43969 (LOW)15    aka: CVE-2026-43969, GHSA-g2wm-735q-3f5616    Cookie Request Header Injection via Unvalidated Encoder in cow_cookie:cookie/117    https://osv.dev/vulnerability/EEF-CVE-2026-4396918  decimal 3.1.119  deep_merge 1.0.220  dns_cluster 0.1.321  ecto 3.14.222  elixir_make 0.10.023  esbuild 0.10.024  expo 1.1.125  file_system 1.1.126  finch 0.24.027  floki 0.38.428  fss 0.1.129  gettext 0.26.230  hpax 1.1.031  interactive_cmd 0.1.432  jason 1.4.533  kino 0.12.334  kino_live_view_native 0.2.235  live_view_native 0.2.036  live_view_native_platform 0.2.037  live_view_native_stylesheet 0.2.038  live_view_native_swiftui 0.2.139  makeup 1.2.240  makeup_json 0.1.141  makeup_swift 0.0.242  mime 2.0.743  mint 1.11.044  nerves 2.0.0-pre.245  nerves_discovery 0.1.546  nerves_logging 0.2.447  nerves_runtime 0.13.1348  nerves_system_bbb 2.30.249  nerves_system_br 1.34.450  nerves_system_mangopi_mq_pro 0.17.251  nerves_system_qemu_aarch64 0.4.252  nerves_system_rpi0 2.1.253  nerves_system_rpi4 2.1.254  nerves_system_rpi5 2.1.255  nerves_system_trellis 0.5.056  nerves_system_x86_64 1.34.257  nerves_toolchain_aarch64_nerves_linux_gnu 15.3.158  nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.159  nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.160  nerves_toolchain_riscv64_nerves_linux_gnu 15.3.161  nerves_toolchain_x86_64_nerves_linux_musl 15.3.162  nerves_uevent 0.1.763  nimble_options 1.1.164  nimble_parsec 1.4.265  nimble_pool 1.1.066  owl 0.13.167  phoenix 1.7.2468  phoenix_html 3.3.469  phoenix_live_dashboard 0.8.770  phoenix_live_reload 1.7.071  phoenix_live_view 0.20.2 VULNERABLE!72    EEF-CVE-2026-64941 (LOW)73    aka: CVE-2026-64941, GHSA-36m4-rm57-3prf74    Open redirect in Phoenix.LiveView.validate_local_url!/2 via ASCII tab, LF and CR75    https://osv.dev/vulnerability/EEF-CVE-2026-6494176  phoenix_pubsub 2.3.077  phoenix_template 1.1.078  phoenix_view 2.0.479  plug 1.20.380  plug_cowboy 2.9.081  plug_crypto 2.2.082  property_table 0.3.483  ranch 2.3.084  ring_logger 0.11.785  table 0.1.286  tablet 0.3.387  tailwind 0.2.488  telemetry 1.4.289  telemetry_metrics 0.6.290  telemetry_poller 1.3.091  toolshed 0.5.092  uboot_env 1.0.293  websock 0.5.394  websock_adapter 0.5.995* Getting kino_live_view_native (Hex package)96* Getting nerves (Hex package)97* Getting ring_logger (Hex package)98* Getting toolshed (Hex package)99* Getting nerves_runtime (Hex package)100* Getting nerves_system_bbb (Hex package)101* Getting nerves_system_mangopi_mq_pro (Hex package)102* Getting nerves_system_qemu_aarch64 (Hex package)103* Getting nerves_system_rpi0 (Hex package)104* Getting nerves_system_rpi4 (Hex package)105* Getting nerves_system_rpi5 (Hex package)106* Getting nerves_system_trellis (Hex package)107* Getting nerves_system_x86_64 (Hex package)108* Getting nerves_system_br (Hex package)109* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)110* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)111* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)112* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)113* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)114* Getting nerves_logging (Hex package)115* Getting nerves_uevent (Hex package)116* Getting uboot_env (Hex package)117* Getting elixir_make (Hex package)118* Getting property_table (Hex package)119* Getting circular_buffer (Hex package)120* Getting interactive_cmd (Hex package)121* Getting nerves_discovery (Hex package)122* Getting tablet (Hex package)123* Getting dns_cluster (Hex package)124* Getting esbuild (Hex package)125* Getting finch (Hex package)126* Getting floki (Hex package)127* Getting gettext (Hex package)128* Getting jason (Hex package)129* Getting kino (Hex package)130* Getting live_view_native (Hex package)131* Getting live_view_native_swiftui (Hex package)132* Getting phoenix (Hex package)133* Getting phoenix_html (Hex package)134* Getting phoenix_live_dashboard (Hex package)135* Getting phoenix_live_reload (Hex package)136* Getting phoenix_live_view (Hex package)137* Getting plug_cowboy (Hex package)138* Getting tailwind (Hex package)139* Getting telemetry_metrics (Hex package)140* Getting telemetry_poller (Hex package)141* Getting telemetry (Hex package)142* Getting castore (Hex package)143* Getting cowboy (Hex package)144* Getting cowboy_telemetry (Hex package)145* Getting plug (Hex package)146* Getting mime (Hex package)147* Getting plug_crypto (Hex package)148* Getting cowlib (Hex package)149* Getting ranch (Hex package)150* Getting phoenix_template (Hex package)151* Getting file_system (Hex package)152* Getting phoenix_pubsub (Hex package)153* Getting websock_adapter (Hex package)154* Getting websock (Hex package)155* Getting live_view_native_platform (Hex package)156* Getting live_view_native_stylesheet (Hex package)157* Getting makeup_json (Hex package)158* Getting makeup_swift (Hex package)159* Getting nimble_parsec (Hex package)160* Getting makeup (Hex package)161* Getting ecto (Hex package)162* Getting decimal (Hex package)163* Getting deep_merge (Hex package)164* Getting owl (Hex package)165* Getting phoenix_view (Hex package)166* Getting fss (Hex package)167* Getting table (Hex package)168* Getting expo (Hex package)169* Getting mint (Hex package)170* Getting nimble_options (Hex package)171* Getting nimble_pool (Hex package)172* Getting hpax (Hex package)173Found packages with security advisories, see above for details174You have added/upgraded packages you could sponsor, run `mix hex.sponsor` to learn more175==> nerves_system_br176Generated nerves_system_br app177==> file_system178Compiling 7 files (.ex)179Generated file_system app180==> floki181Compiling 1 file (.xrl)182Compiling 2 files (.erl)183Compiling 30 files (.ex)184Compiling lib/floki.ex (it's taking more than 10s)185Generated floki app186==> mime187Compiling 1 file (.ex)188Generated mime app189==> circular_buffer190Compiling 1 file (.ex)191Generated circular_buffer app192==> nimble_options193Compiling 3 files (.ex)194Generated nimble_options app195==> plug_crypto196Compiling 5 files (.ex)197Generated plug_crypto app198==> hpax199Compiling 4 files (.ex)200Generated hpax app201==> nerves_compatibility_test202===> Analyzing applications...203===> Compiling ranch204==> tablet205Compiling 2 files (.ex)206Generated tablet app207==> owl208Compiling 19 files (.ex)209Generated owl app210==> elixir_make211Compiling 8 files (.ex)212Generated elixir_make app213==> nerves_logging214 CC kmsg_tailer.o215 LD kmsg_tailer216Compiling 5 files (.ex)217Generated nerves_logging app218==> castore219Compiling 1 file (.ex)220Generated castore app221==> mint222Compiling 1 file (.erl)223Compiling 21 files (.ex)224Generated mint app225==> nerves_compatibility_test226===> Analyzing applications...227===> Compiling cowlib228==> nerves_discovery229Compiling 5 files (.ex)230Generated nerves_discovery app231==> ring_logger232Compiling 7 files (.ex)233Generated ring_logger app234==> deep_merge235Compiling 2 files (.ex)236Generated deep_merge app237==> decimal238Compiling 4 files (.ex)239Generated decimal app240==> jason241Compiling 10 files (.ex)242Generated jason app243==> esbuild244Compiling 4 files (.ex)245Generated esbuild app246==> table247Compiling 5 files (.ex)248Generated table app249==> interactive_cmd250Compiling 1 file (.ex)251Generated interactive_cmd app252==> nerves253Compiling 65 files (.ex)254    warning: redefining module Mix.Tasks.Nerves.Init (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Mix.Tasks.Nerves.Init.beam)255    │256  6 │ defmodule Mix.Tasks.Nerves.Init do257    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~258    │259    └─ lib/mix/tasks/nerves.init.ex:6: Mix.Tasks.Nerves.Init (module)260261    warning: redefining module Nerves (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.beam)262    │263  6 │ defmodule Nerves do264    │ ~~~~~~~~~~~~~~~~~~~265    │266    └─ lib/nerves.ex:6: Nerves (module)267268    warning: redefining module Nerves.ArtifactResolver (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.ArtifactResolver.beam)269    │270  5 │ defmodule Nerves.ArtifactResolver do271    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~272    │273    └─ lib/nerves/artifact_resolver.ex:5: Nerves.ArtifactResolver (module)274275    warning: redefining module Nerves.BuildAction.AppModes (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.AppModes.beam)276    │277  6 │ defmodule Nerves.BuildAction.AppModes do278    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~279    │280    └─ lib/nerves/build_action/app_modes.ex:6: Nerves.BuildAction.AppModes (module)281282    warning: redefining module Nerves.BuildAction.CheckExecutables (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.CheckExecutables.beam)283    │284  5 │ defmodule Nerves.BuildAction.CheckExecutables do285    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~286    │287    └─ lib/nerves/build_action/check_executables.ex:5: Nerves.BuildAction.CheckExecutables (module)288289    warning: redefining module Nerves.BuildAction.Firmware (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.Firmware.beam)290    │291  5 │ defmodule Nerves.BuildAction.Firmware do292    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~293    │294    └─ lib/nerves/build_action/firmware.ex:5: Nerves.BuildAction.Firmware (module)295296    warning: redefining module Nerves.BuildAction.Erlinit (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.Erlinit.beam)297    │298  8 │ defmodule Nerves.BuildAction.Erlinit do299    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~300    │301    └─ lib/nerves/build_action/erlinit.ex:8: Nerves.BuildAction.Erlinit (module)302303    warning: redefining module Nerves.BuildAction.IExStartupCheck (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.IExStartupCheck.beam)304    │305  7 │ defmodule Nerves.BuildAction.IExStartupCheck do306    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~307    │308    └─ lib/nerves/build_action/iex_startup_check.ex:7: Nerves.BuildAction.IExStartupCheck (module)309310    warning: redefining module Nerves.BuildAction.NervesV1System (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1System.beam)311    │312  5 │ defmodule Nerves.BuildAction.NervesV1System do313    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~314    │315    └─ lib/nerves/build_action/nerves_v1_system.ex:5: Nerves.BuildAction.NervesV1System (module)316317    warning: redefining module Nerves.BuildAction.NervesV1Toolchain (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1Toolchain.beam)318    │319  5 │ defmodule Nerves.BuildAction.NervesV1Toolchain do320    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~321    │322    └─ lib/nerves/build_action/nerves_v1_toolchain.ex:5: Nerves.BuildAction.NervesV1Toolchain (module)323324    warning: redefining module Nerves.BuildAction.Rootfs (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.Rootfs.beam)325    │326  5 │ defmodule Nerves.BuildAction.Rootfs do327    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~328    │329    └─ lib/nerves/build_action/rootfs.ex:5: Nerves.BuildAction.Rootfs (module)330331    warning: redefining module Nerves.BuildAction.SortApps (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.SortApps.beam)332    │333  6 │ defmodule Nerves.BuildAction.SortApps do334    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~335    │336    └─ lib/nerves/build_action/sort_apps.ex:6: Nerves.BuildAction.SortApps (module)337338    warning: redefining module Nerves.BuildAction.StripAll (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.StripAll.beam)339    │340  5 │ defmodule Nerves.BuildAction.StripAll do341    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~342    │343    └─ lib/nerves/build_action/strip_all.ex:5: Nerves.BuildAction.StripAll (module)344345    warning: redefining module Nerves.BuildAction.Trimmer (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.Trimmer.beam)346    │347  5 │ defmodule Nerves.BuildAction.Trimmer do348    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~349    │350    └─ lib/nerves/build_action/trimmer.ex:5: Nerves.BuildAction.Trimmer (module)351352    warning: redefining module Nerves.BuildPlan (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildPlan.beam)353    │354  5 │ defmodule Nerves.BuildPlan do355    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~356    │357    └─ lib/nerves/build_plan.ex:5: Nerves.BuildPlan (module)358359    warning: redefining module Nerves.BuildPlan.Checks (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildPlan.Checks.beam)360    │361  5 │ defmodule Nerves.BuildPlan.Checks do362    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~363    │364    └─ lib/nerves/build_plan/checks.ex:5: Nerves.BuildPlan.Checks (module)365366    warning: redefining module Nerves.Container (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.Container.beam)367    │368  6 │ defmodule Nerves.Container do369    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~370    │371    └─ lib/nerves/container.ex:6: Nerves.Container (module)372373    warning: redefining module Nerves.Fingerprint (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.Fingerprint.beam)374    │375  5 │ defmodule Nerves.Fingerprint do376    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~377    │378    └─ lib/nerves/fingerprint.ex:5: Nerves.Fingerprint (module)379380    warning: redefining module Nerves.MixPackage (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.MixPackage.beam)381    │382  5 │ defmodule Nerves.MixPackage do383    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~384    │385    └─ lib/nerves/mix_package.ex:5: Nerves.MixPackage (module)386387    warning: redefining module Nerves.Paths (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.Paths.beam)388    │389  5 │ defmodule Nerves.Paths do390    │ ~~~~~~~~~~~~~~~~~~~~~~~~~391    │392    └─ lib/nerves/paths.ex:5: Nerves.Paths (module)393394    warning: redefining module Nerves.TargetTuple (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.TargetTuple.beam)395    │396  5 │ defmodule Nerves.TargetTuple do397    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~398    │399    └─ lib/nerves/target_tuple.ex:5: Nerves.TargetTuple (module)400401Generated nerves app402==> nerves_toolchain_armv7_nerves_linux_gnueabihf403Compiling 1 file (.ex)404Generated nerves_toolchain_armv7_nerves_linux_gnueabihf app405==> nerves_system_trellis406Generated nerves_system_trellis app407==> nimble_parsec408Compiling 4 files (.ex)409Generated nimble_parsec app410==> makeup411Compiling 15 files (.ex)412Generated makeup app413==> makeup_swift414Compiling 3 files (.ex)415     warning: this clause cannot match because a previous clause at line 233 matches the same pattern as this clause416     │417 233 │   defparsec(418     │   ~~~~~~~~~~419     │420     └─ lib/makeup/lexers/swift_lexer.ex:233421422     warning: this clause cannot match because a previous clause at line 233 matches the same pattern as this clause423     │424 233 │   defparsec(425     │   ~~~~~~~~~~426     │427     └─ lib/makeup/lexers/swift_lexer.ex:233428429     warning: this clause cannot match because a previous clause at line 233 matches the same pattern as this clause430     │431 233 │   defparsec(432     │   ~~~~~~~~~~433     │434     └─ lib/makeup/lexers/swift_lexer.ex:233435436Generated makeup_swift app437==> nerves_compatibility_test438===> Analyzing applications...439===> Compiling telemetry440==> telemetry_metrics441Compiling 7 files (.ex)442     warning: unused require Logger443     │444 391 │   require Logger445     │   ~446     │447     └─ lib/telemetry_metrics.ex:391:3448449Generated telemetry_metrics app450==> nerves_compatibility_test451===> Analyzing applications...452===> Compiling telemetry_poller453==> ecto454Compiling 56 files (.ex)455Generated ecto app456==> nerves_compatibility_test457===> Analyzing applications...458===> Compiling cowboy459==> expo460Compiling 2 files (.erl)461Compiling 22 files (.ex)462Generated expo app463==> gettext464Compiling 18 files (.ex)465     warning: unused require Gettext.Macros466     │467 594 │   require Gettext.Macros468     │   ~469     │470     └─ lib/gettext.ex:594:3471472     warning: the following clause is redundant:473474         defp ensure_empty_msgstr!(%Expo.Message.Plural{} = message)475476     it has type:477478         dynamic(%Expo.Message.Plural{})479480     previous clauses have already matched on the following types:481482         %Expo.Message.Singular{}483         %Expo.Message.Plural{}484485     │486 391 │   defp ensure_empty_msgstr!(%Message.Plural{} = message) do487     │        ~488     │489     └─ lib/gettext/extractor.ex:391:8: Gettext.Extractor.ensure_empty_msgstr!/1490491     warning: Kernel.ParallelCompiler.async/1 is deprecated. Use `pmap/2` instead492     │493 426 │               Kernel.ParallelCompiler.async(fn ->494     │                                       ~495     │496     └─ lib/gettext/compiler.ex:426:39: Gettext.Compiler.compile_po_files/3497498Generated gettext app499==> phoenix_pubsub500Compiling 12 files (.ex)501Generated phoenix_pubsub app502==> live_view_native_stylesheet503Compiling 14 files (.ex)504Generated live_view_native_stylesheet app505==> dns_cluster506Compiling 1 file (.ex)507     warning: comparison between distinct types found:508509         net_state.started != :no510511     given types:512513         dynamic(not :no) != :no514515     where "net_state" was given the types:516517         # type: dynamic()518         # from: lib/dns_cluster.ex:166:8519         net_state520521         # type: dynamic(not false and not nil)522         # from: lib/dns_cluster.ex:166:8523         net_state524525         # type: dynamic(%{..., started: term()})526         # from: lib/dns_cluster.ex:169:25527         net_state.started == :no528529         # type: dynamic(%{..., started: not :no})530         # from: lib/dns_cluster.ex:179:25531         net_state.started == :no532533     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 false534535     type warning found at:536     │537 180 │           (!release? and net_state.started != :no and net_state[:name_domain] != :longnames) ->538     │                                            ~539     │540     └─ lib/dns_cluster.ex:180:44: DNSCluster.warn_on_invalid_dist/0541542Generated dns_cluster app543==> makeup_json544Compiling 3 files (.ex)545Generated makeup_json app546==> plug547Compiling 1 file (.erl)548Compiling 42 files (.ex)549Generated plug app550==> phoenix_html551Compiling 9 files (.ex)552    warning: comparison between distinct types found:553554        id == nil555556    given types:557558        dynamic(not false and not nil and not binary()) == nil559560    where "id" was given the types:561562        # type: dynamic(not false and not nil)563        # from: lib/phoenix_html/form_data.ex:92:8564        id = Keyword.get(opts, :id) || name565566        # type: dynamic(not false and not nil and not binary())567        # from: lib/phoenix_html/form_data.ex:94:12568        is_binary(id)569570    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 false571572    type warning found at:573    │574 94 │     unless is_binary(id) or is_nil(id) do575    │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~576    │577    └─ lib/phoenix_html/form_data.ex:94: Phoenix.HTML.FormData.Atom.to_form/2578579    warning: the 1st pattern in clause will never match:580581        60582583    because it is expected to receive type:584585        dynamic(empty_list() or non_empty_list(term(), term()))586587    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())588589    type warning found at:590    │591 56 │   def to_iodata(?<), do: "&lt;"592    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~593    │594    └─ lib/phoenix_html/safe.ex:56: Phoenix.HTML.Safe.List.to_iodata/1595596    warning: the 1st pattern in clause will never match:597598        62599600    because it is expected to receive type:601602        dynamic(empty_list() or non_empty_list(term(), term()))603604    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())605606    type warning found at:607    │608 57 │   def to_iodata(?>), do: "&gt;"609    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~610    │611    └─ lib/phoenix_html/safe.ex:57: Phoenix.HTML.Safe.List.to_iodata/1612613    warning: the 1st pattern in clause will never match:614615        38616617    because it is expected to receive type:618619        dynamic(empty_list() or non_empty_list(term(), term()))620621    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())622623    type warning found at:624    │625 58 │   def to_iodata(?&), do: "&amp;"626    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~627    │628    └─ lib/phoenix_html/safe.ex:58: Phoenix.HTML.Safe.List.to_iodata/1629630    warning: the 1st pattern in clause will never match:631632        34633634    because it is expected to receive type:635636        dynamic(empty_list() or non_empty_list(term(), term()))637638    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())639640    type warning found at:641    │642 59 │   def to_iodata(?"), do: "&quot;"643    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~644    │645    └─ lib/phoenix_html/safe.ex:59: Phoenix.HTML.Safe.List.to_iodata/1646647    warning: the 1st pattern in clause will never match:648649        39650651    because it is expected to receive type:652653        dynamic(empty_list() or non_empty_list(term(), term()))654655    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())656657    type warning found at:658    │659 60 │   def to_iodata(?'), do: "&#39;"660    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~661    │662    └─ lib/phoenix_html/safe.ex:60: Phoenix.HTML.Safe.List.to_iodata/1663664    warning: the 1st pattern in clause will never match:665666        {:safe, data}667668    because it is expected to receive type:669670        dynamic(empty_list() or non_empty_list(term(), term()))671672    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())673674    type warning found at:675    │676 76 │   def to_iodata({:safe, data}) do677    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~678    │679    └─ lib/phoenix_html/safe.ex:76: Phoenix.HTML.Safe.List.to_iodata/1680681    warning: the following clause is redundant:682683        def to_iodata(other)684685    it has type:686687        dynamic(empty_list() or non_empty_list(term(), term()))688689    previous clauses have already matched on the following types:690691        non_empty_list(term(), term())692        empty_list()693694    │695 80 │   def to_iodata(other) do696    │       ~697    │698    └─ lib/phoenix_html/safe.ex:80:7: Phoenix.HTML.Safe.List.to_iodata/1699700    warning: the 1st pattern in clause will never match:701702        h703704    because it is expected to receive type:705706        dynamic(empty_list() or non_empty_list(term(), term()))707708    where "h" was given the type:709710        # type: integer()711        # from: lib/phoenix_html/safe.ex:62:25712        is_integer(h)713714    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())715716    type warning found at:717    │718 62 │   def to_iodata(h) when is_integer(h) and h <= 255 do719    │                 ~720    │721    └─ lib/phoenix_html/safe.ex:62:17: Phoenix.HTML.Safe.List.to_iodata/1722723    warning: the 1st pattern in clause will never match:724725        h726727    because it is expected to receive type:728729        dynamic(empty_list() or non_empty_list(term(), term()))730731    where "h" was given the type:732733        # type: integer()734        # from: lib/phoenix_html/safe.ex:66:25735        is_integer(h)736737    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())738739    type warning found at:740    │741 66 │   def to_iodata(h) when is_integer(h) do742    │                 ~743    │744    └─ lib/phoenix_html/safe.ex:66:17: Phoenix.HTML.Safe.List.to_iodata/1745746    warning: the 1st pattern in clause will never match:747748        h749750    because it is expected to receive type:751752        dynamic(empty_list() or non_empty_list(term(), term()))753754    where "h" was given the type:755756        # type: binary()757        # from: lib/phoenix_html/safe.ex:72:25758        is_binary(h)759760    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())761762    type warning found at:763    │764 72 │   def to_iodata(h) when is_binary(h) do765    │                 ~766    │767    └─ lib/phoenix_html/safe.ex:72:17: Phoenix.HTML.Safe.List.to_iodata/1768769Generated phoenix_html app770==> phoenix_template771Compiling 4 files (.ex)772Generated phoenix_template app773==> live_view_native_platform774Compiling 11 files (.ex)775    warning: "else" clauses will never match because all patterns in "with" will always match776    │777 38 │     with spec <- Application.spec(otp_app),778    │     ~779    │780    └─ lib/live_view_native_platform/env.ex:38:5781782    warning: the following clause will never match:783784        error ->785786    it is expected to match on type:787788        none()789790    type warning found at:791    │792 64 │       error ->793    │       ~794    │795    └─ lib/live_view_native_platform/env.ex:64:7: LiveViewNativePlatform.Env.define/2796797Generated live_view_native_platform app798==> phoenix_view799Compiling 1 file (.ex)800     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 operator801     │802 655 │       <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix803     │                             ~804     │805     └─ lib/phoenix_view.ex:655:29: Phoenix.View.unsuffix/2806807Generated phoenix_view app808==> uboot_env809Compiling 5 files (.ex)810Generated uboot_env app811==> nimble_pool812Compiling 2 files (.ex)813Generated nimble_pool app814==> finch815Compiling 23 files (.ex)816Generated finch app817==> property_table818Compiling 8 files (.ex)819Generated property_table app820==> nerves_uevent821 CC uevent.o822 LD uevent823Compiling 5 files (.ex)824Generated nerves_uevent app825==> nerves_runtime826Compiling 14 files (.ex)827Generated nerves_runtime app828==> toolshed829Compiling 5 files (.ex)830Generated toolshed app831==> tailwind832Compiling 3 files (.ex)833Generated tailwind app834==> nerves_compatibility_test835===> Analyzing applications...836===> Compiling cowboy_telemetry837==> plug_cowboy838Compiling 5 files (.ex)839Generated plug_cowboy app840==> websock841Compiling 1 file (.ex)842Generated websock app843==> websock_adapter844Compiling 4 files (.ex)845Generated websock_adapter app846warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"847  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2848  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1849  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5850  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2851  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4852  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2853854==> phoenix855Compiling 71 files (.ex)856    warning: unused require Logger857    │858  9 │   require Logger859    │   ~860    │861    └─ lib/phoenix/config.ex:9:3862863     warning: unused require Logger864     │865 281 │   require Logger866     │   ~867     │868     └─ lib/phoenix/endpoint.ex:281:3869870    warning: unused require Phoenix.Endpoint871    │872  6 │   require Phoenix.Endpoint873    │   ~874    │875    └─ lib/phoenix/controller.ex:6:3876877    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 operator878    │879 46 │       <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix880    │                             ~881    │882    └─ lib/phoenix/naming.ex:46:29: Phoenix.Naming.unsuffix/2883884    warning: unused require Phoenix.Endpoint885    │886 17 │   require Phoenix.Endpoint887    │   ~888    │889    └─ lib/phoenix/endpoint/render_errors.ex:17:3890891    warning: unused require Phoenix.Endpoint892    │893  6 │   require Phoenix.Endpoint894    │   ~895    │896    └─ lib/phoenix/channel/server.ex:6:3897898     warning: unused require Phoenix.Endpoint899     │900 202 │   require Phoenix.Endpoint901     │   ~902     │903     └─ lib/phoenix/socket.ex:202:3904905    warning: unused require Logger906    │907 70 │   require Logger908    │   ~909    │910    └─ lib/phoenix/socket/pool_supervisor.ex:70:3911912     warning: unused require Logger913     │914 100 │   require Logger915     │   ~916     │917     └─ lib/phoenix/token.ex:100:3918919     warning: comparison between distinct types found:920921         merge_all != []922923     given types:924925         dynamic(non_empty_list({atom(), term()})) != empty_list()926927     where "merge_all" was given the type:928929         # type: dynamic(non_empty_list({atom(), term()}))930         # from: lib/phoenix/router/route.ex:121:15931         merge_all = merge_params ++ merge_private ++ merge_assigns932933     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 false934935     type warning found at:936     │937 123 │     if merge_all != [] do938     │                  ~939     │940     └─ lib/phoenix/router/route.ex:123:18: Phoenix.Router.Route.build_prepare/1941942    warning: a struct for Plug.Conn is expected on struct update:943944        %Plug.Conn{conn | state: :sent}945946    but got type:947948        dynamic()949950    where "conn" was given the type:951952        # type: dynamic()953        # from: lib/phoenix/endpoint/render_errors.ex:55:17954        conn955956    when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"957958    type warning found at:959    │960 60 │           %Plug.Conn{conn | state: :sent}961    │           ~962    │963    └─ lib/phoenix/endpoint/render_errors.ex:60:11: Phoenix.Endpoint.RenderErrors.__catch__/5964965     warning: a struct for Plug.Conn is expected on struct update:966967         %Plug.Conn{conn | query_params: %{}, params: %{}}968969     but got type:970971         dynamic(%{..., params: %Plug.Conn.Unfetched{}})972973     where "conn" was given the types:974975         # type: dynamic(%{..., params: term()})976         # from: lib/phoenix/endpoint/render_errors.ex:133:17977         conn.params978979         # type: dynamic(%{..., params: %Plug.Conn.Unfetched{}})980         # from: lib/phoenix/endpoint/render_errors.ex:133:17981         conn.params982983     when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"984985     type warning found at:986     │987 134 │         %Plug.Conn.Unfetched{} -> %Plug.Conn{conn | query_params: %{}, params: %{}}988     │                                   ~989     │990     └─ lib/phoenix/endpoint/render_errors.ex:134:35: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1991992     warning: a struct for Plug.Conn is expected on struct update:993994         %Plug.Conn{conn | query_params: %{}, params: params}995996     but got type:997998         dynamic(%{..., params: not %Plug.Conn.Unfetched{}})9991000     where "conn" was given the types:10011002         # type: dynamic(%{..., params: term()})1003         # from: lib/phoenix/endpoint/render_errors.ex:133:171004         conn.params10051006         # type: dynamic(%{..., params: not %Plug.Conn.Unfetched{}})1007         # from: lib/phoenix/endpoint/render_errors.ex:133:171008         conn.params10091010     when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"10111012     type warning found at:1013     │1014 135 │         params -> %Plug.Conn{conn | query_params: %{}, params: params}1015     │                   ~1016     │1017     └─ lib/phoenix/endpoint/render_errors.ex:135:19: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/110181019      warning: a struct for Plug.Conn is expected on struct update:10201021          %Plug.Conn{conn | params: params}10221023      but got type:10241025          dynamic(%{..., params: map()})10261027      where "conn" was given the type:10281029          # type: dynamic(%{..., params: map()})1030          # from: lib/phoenix/controller.ex:1327:171031          Map.get(conn.params, required_key)10321033      when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"10341035      type warning found at:1036      │1037 1334 │     %Plug.Conn{conn | params: params}1038      │     ~1039      │1040      └─ lib/phoenix/controller.ex:1334:5: Phoenix.Controller.scrub_params/210411042Generated phoenix app1043==> phoenix_live_reload1044Compiling 5 files (.ex)1045Generated phoenix_live_reload app1046warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1047  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21048  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11049  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51050  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21051  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41052  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/210531054==> phoenix_live_view1055Compiling 39 files (.ex)1056    warning: unused require Logger1057    │1058 48 │   require Logger1059    │   ~1060    │1061    └─ lib/phoenix_live_view/socket.ex:48:310621063     warning: unused require Phoenix.ChannelTest1064     │1065 183 │   require Phoenix.ChannelTest1066     │   ~1067     │1068     └─ lib/phoenix_live_view/test/live_view_test.ex:183:310691070     warning: unused require Phoenix.ConnTest1071     │1072 182 │   require Phoenix.ConnTest1073     │   ~1074     │1075     └─ lib/phoenix_live_view/test/live_view_test.ex:182:310761077    warning: unused require Phoenix.ChannelTest1078    │1079  5 │   require Phoenix.ChannelTest1080    │   ~1081    │1082    └─ lib/phoenix_live_view/test/upload_client.ex:5:310831084    warning: unused require Logger1085    │1086  6 │   require Logger1087    │   ~1088    │1089    └─ lib/phoenix_live_view/upload_channel.ex:6:310901091     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:10921093         %Phoenix.LiveView.UploadEntry{1094           entry1095           | preflighted?: entry.preflighted? || Enum.__in__(entry.ref, refs_awaiting)1096         }10971098     but got type:10991100         dynamic()11011102     where "entry" was given the type:11031104         # type: dynamic()1105         # from: lib/phoenix_live_view/upload_config.ex:363:171106         entry <- conf.entries11071108     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"11091110     type warning found at:1111     │1112 364 │         %UploadEntry{entry | preflighted?: entry.preflighted? || entry.ref in refs_awaiting}1113     │         ~1114     │1115     └─ lib/phoenix_live_view/upload_config.ex:364:9: Phoenix.LiveView.UploadConfig.mark_preflighted/111161117      warning: the following clause is redundant:11181119          def update(assigns, _key, fun) when is_function(fun, 1) or is_function(fun, 2)11201121      it has type:11221123          dynamic(), dynamic(), dynamic((none() -> term()) or (none(), none() -> term()))11241125      previous clauses have already matched on the following types:11261127          %Phoenix.LiveView.Socket{}, term(), (none(), none() -> term())1128          %Phoenix.LiveView.Socket{}, term(), (none() -> term())1129          term(), term(), (none(), none() -> term())1130          term(), term(), (none() -> term())11311132      │1133 1366 │   def update(assigns, _key, fun) when is_function(fun, 1) or is_function(fun, 2) do1134      │       ~1135      │1136      └─ lib/phoenix_component.ex:1366:7: Phoenix.Component.update/311371138     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:11391140         %Phoenix.LiveView.UploadEntry{entry | valid?: true, uuid: generate_uuid()}11411142     but got type:11431144         dynamic()11451146     where "entry" was given the type:11471148         # type: dynamic()1149         # from: lib/phoenix_live_view/upload_config.ex:579:301150         entry11511152     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"11531154     type warning found at:1155     │1156 580 │     entry = %UploadEntry{entry | valid?: true, uuid: generate_uuid()}1157     │             ~1158     │1159     └─ lib/phoenix_live_view/upload_config.ex:580:13: Phoenix.LiveView.UploadConfig.put_valid_entry/211601161     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:11621163         %Phoenix.LiveView.UploadEntry{entry | valid?: false}11641165     but got type:11661167         dynamic()11681169     where "entry" was given the type:11701171         # type: dynamic()1172         # from: lib/phoenix_live_view/upload_config.ex:592:321173         entry11741175     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"11761177     type warning found at:1178     │1179 593 │     entry = %UploadEntry{entry | valid?: false}1180     │             ~1181     │1182     └─ lib/phoenix_live_view/upload_config.ex:593:13: Phoenix.LiveView.UploadConfig.put_invalid_entry/311831184     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:11851186         %Phoenix.LiveView.UploadEntry{entry | cancelled?: true}11871188     but got type:11891190         dynamic()11911192     where "entry" was given the type:11931194         # type: dynamic()1195         # from: lib/phoenix_live_view/upload_config.ex:676:421196         entry11971198     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"11991200     type warning found at:1201     │1202 676 │         update_entry(conf, entry.ref, fn entry -> %UploadEntry{entry | cancelled?: true} end)1203     │                                                   ~1204     │1205     └─ lib/phoenix_live_view/upload_config.ex:676:51: Phoenix.LiveView.UploadConfig.cancel_entry/212061207     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:12081209         %Phoenix.LiveView.Socket{1210           socket1211           | assigns: Map.merge(temp_assigns, socket.assigns),1212             private: Map.put(socket.private, :temporary_assigns, temp_assigns)1213         }12141215     but got type:12161217         dynamic()12181219     where "socket" was given the type:12201221         # type: dynamic()1222         # from: lib/phoenix_live_view/utils.ex:528:211223         socket12241225     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"12261227     type warning found at:1228     │1229 535 │     %Socket{1230     │     ~1231     │1232     └─ lib/phoenix_live_view/utils.ex:535:5: Phoenix.LiveView.Utils.do_mount_opt/312331234    warning: the following clause will never match:12351236        {:error, reason} ->12371238    because it attempts to match on the result of:12391240        IO.binwrite(state.file, data)12411242    which has type:12431244        dynamic(not {:error, term()})12451246    type warning found at:1247    │1248 23 │       {:error, reason} -> {:error, reason, state}1249    │       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1250    │1251    └─ lib/phoenix_live_view/upload_tmp_file_writer.ex:23: Phoenix.LiveView.UploadTmpFileWriter.write_chunk/212521253    warning: Logger.disable/1 is deprecated. Use Logger.put_process_level(pid, :none) instead1254    │1255 73 │     Logger.disable(self())1256    │            ~1257    │1258    └─ lib/phoenix_live_view/test/client_proxy.ex:73:12: Phoenix.LiveViewTest.ClientProxy.init/112591260     warning: the right-hand side of || (shown as ... below) will never be executed:12611262         conn.private[:live_view_connect_info] || prune_conn(conn) || ...12631264     because the left-hand side always evaluates to:12651266         dynamic(not false and not nil)12671268     where "conn" was given the types:12691270         # type: dynamic(%Plug.Conn{assigns: %{..., live_module: term()}, status: integer()})1271         # from: lib/phoenix_live_view/test/live_view_test.ex:324:721272         %Plug.Conn{status: 200, assigns: %{live_module: live_module}} = conn12731274         # type: dynamic(%Plug.Conn{1275           assigns: %{..., live_module: term()},1276           private:1277             %{..., __struct__: atom()} or nil or empty_list() or non_empty_list(term(), term()) or1278               non_struct_map(),1279           status: integer()1280         })1281         # from: lib/phoenix_live_view/test/live_view_test.ex:338:351282         conn.private[:live_view_connect_params]12831284     type warning found at:1285     │1286 339 │       connect_info: conn.private[:live_view_connect_info] || prune_conn(conn) || %{},1287     │       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1288     │1289     └─ lib/phoenix_live_view/test/live_view_test.ex:339: Phoenix.LiveViewTest.connect_from_static_token/212901291     warning: a struct for Phoenix.LiveViewTest.ClientProxy is expected on struct update:12921293         %Phoenix.LiveViewTest.ClientProxy{view | rendered: rendered}12941295     but got type:12961297         dynamic(%{..., rendered: map()})12981299     where "view" was given the type:13001301         # type: dynamic(%{..., rendered: map()})1302         # from: lib/phoenix_live_view/test/client_proxy.ex:739:241303         Phoenix.LiveViewTest.DOM.merge_diff(view.rendered, diff)13041305     when defining the variable "view", you must also pattern match on "%Phoenix.LiveViewTest.ClientProxy{}"13061307     type warning found at:1308     │1309 740 │         new_view = %ClientProxy{view | rendered: rendered}1310     │                    ~1311     │1312     └─ lib/phoenix_live_view/test/client_proxy.ex:740:20: Phoenix.LiveViewTest.ClientProxy.merge_rendered/313131314     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:13151316         %Phoenix.LiveView.Socket{1317           socket1318           | assigns: %Phoenix.LiveView.Socket.AssignsNotInSocket{__assigns__: assigns}1319         }13201321     but got type:13221323         dynamic(%{..., assigns: term()})13241325     where "socket" was given the type:13261327         # type: dynamic(%{..., assigns: term()})1328         # from: lib/phoenix_live_view/renderer.ex:121:431329         %{assigns: assigns} = socket13301331     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"13321333     type warning found at:1334     │1335 122 │     socket = %Socket{socket | assigns: %Socket.AssignsNotInSocket{__assigns__: assigns}}1336     │              ~1337     │1338     └─ lib/phoenix_live_view/renderer.ex:122:14: Phoenix.LiveView.Renderer.render_assigns/113391340     warning: the following pattern will never match:13411342         template = Phoenix.LiveView.Utils.normalize_layout(template, "live_session :root_layout")13431344     because the right-hand side has type:13451346         none()13471348     where "template" was given the types:13491350         # type: binary()1351         # from: lib/phoenix_live_view/router.ex:288:661352         is_binary(template)13531354         # type: binary()1355         # from: lib/phoenix_live_view/router.ex1356         {:root_layout, {mod, template}}13571358     type warning found at:1359     │1360 289 │         template = Phoenix.LiveView.Utils.normalize_layout(template, "live_session :root_layout")1361     │                  ~1362     │1363     └─ lib/phoenix_live_view/router.ex:289:18: Phoenix.LiveView.Router.validate_live_session_opts/313641365     warning: the following pattern will never match:13661367         template = Phoenix.LiveView.Utils.normalize_layout(template, "live_session :layout")13681369     because the right-hand side has type:13701371         none()13721373     where "template" was given the types:13741375         # type: binary()1376         # from: lib/phoenix_live_view/router.ex:305:611377         is_binary(template)13781379         # type: binary()1380         # from: lib/phoenix_live_view/router.ex1381         {:layout, {mod, template}}13821383     type warning found at:1384     │1385 306 │         template = Phoenix.LiveView.Utils.normalize_layout(template, "live_session :layout")1386     │                  ~1387     │1388     └─ lib/phoenix_live_view/router.ex:306:18: Phoenix.LiveView.Router.validate_live_session_opts/313891390     warning: the following clause is redundant:13911392         def to_iodata(%_{} = struct)13931394     it has type:13951396         dynamic(%Phoenix.LiveView.Rendered{})13971398     previous clauses have already matched on the following types:13991400         %Phoenix.LiveView.Rendered{}14011402     │1403 153 │     def to_iodata(%_{} = struct) do1404     │         ~1405     │1406     └─ lib/phoenix_live_view/engine.ex:153:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/114071408     warning: the 1st pattern in clause will never match:14091410         nil14111412     because it is expected to receive type:14131414         dynamic(%Phoenix.LiveView.Rendered{})14151416     hint: defimpl for Phoenix.LiveView.Rendered requires its callbacks to match exclusively on %Phoenix.LiveView.Rendered{}14171418     type warning found at:1419     │1420 157 │     def to_iodata(nil) do1421     │     ~~~~~~~~~~~~~~~~~~~~~1422     │1423     └─ lib/phoenix_live_view/engine.ex:157: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/114241425     warning: the following clause is redundant:14261427         def to_iodata(other)14281429     it has type:14301431         dynamic(%Phoenix.LiveView.Rendered{})14321433     previous clauses have already matched on the following types:14341435         %Phoenix.LiveView.Rendered{}14361437     │1438 161 │     def to_iodata(other) do1439     │         ~1440     │1441     └─ lib/phoenix_live_view/engine.ex:161:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/114421443     warning: this clause of defp class_names/1 is never used (or it will always fail/warn when invoked)1444     │1445 799 │   defp class_names(nil), do: []1446     │        ~1447     │1448     └─ lib/phoenix_live_view/js.ex:799:8: Phoenix.LiveView.JS.class_names/114491450Generated phoenix_live_view app1451==> live_view_native1452Compiling 21 files (.ex)1453    warning: the following clause will never match:14541455        _ ->14561457    it is expected to match on type:14581459        none()14601461    type warning found at:1462    │1463 31 │       _ ->1464    │       ~1465    │1466    └─ lib/live_view_native/templates.ex:31:7: LiveViewNative.Templates.compile_class_tree/314671468Generated live_view_native app1469warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1470  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21471  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11472  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51473  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21474  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41475  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/214761477==> phoenix_live_dashboard1478Compiling 36 files (.ex)1479     warning: Postgrex.Interval.to_string/1 is undefined (module Postgrex.Interval is not available or is yet to be defined)1480     │1481 281 │     do: struct.to_string(value)1482     │                ~1483     │1484     └─ lib/phoenix/live_dashboard/pages/ecto_stats_page.ex:281:16: Phoenix.LiveDashboard.EctoStatsPage.format/214851486Generated phoenix_live_dashboard app1487==> live_view_native_swiftui1488Compiling 14 files (.ex)1489    warning: unused require Logger1490    │1491 12 │     require Logger1492    │     ~1493    │1494    └─ lib/live_view_native/swiftui/platform.ex:12:514951496Compiling lib/live_view_native/swiftui/rules_parser/modifiers.ex (it's taking more than 10s)1497    warning: the following clause will never match:14981499        {:., annotations, [nil, part]} ->15001501    because it attempts to match on the result of:15021503        outer15041505    which has type:15061507        dynamic(atom())15081509    type warning found at:1510    │1511 96 │         {:., annotations, [nil, part]} ->1512    │         ~1513    │1514    └─ lib/live_view_native/swiftui/rules_parser/post_processors.ex:96:9: LiveViewNative.SwiftUI.RulesParser.PostProcessors.combine_chain_ast_parts/215151516Generated live_view_native_swiftui app1517==> kino_live_view_native1518Compiling 19 files (.ex)1519    warning: unused require IEx.Helpers1520    │1521  3 │   require IEx.Helpers1522    │   ~1523    │1524    └─ lib/server/smart_cells/live_view_native.ex:3:315251526warning: defining a Gettext backend by calling15271528    use Gettext, otp_app: ...15291530is deprecated. To define a backend, call:15311532    use Gettext.Backend, otp_app: :my_app15331534Then, instead of importing your backend, call this in your module:15351536    use Gettext, backend: MyApp.Gettext15371538  lib/server_web/gettext.ex:23: ServerWeb.Gettext (module)15391540    warning: variable "params" is unused (if the variable is not meant to be used, prefix it with an underscore)1541    │1542  4 │   def mount(params, session, socket) do1543    │             ~~~~~~1544    │1545    └─ lib/server_web/live/hello_live.ex:4:13: ServerWeb.HelloLive.mount/315461547    warning: variable "session" is unused (if the variable is not meant to be used, prefix it with an underscore)1548    │1549  4 │   def mount(params, session, socket) do1550    │                     ~~~~~~~1551    │1552    └─ lib/server_web/live/hello_live.ex:4:21: ServerWeb.HelloLive.mount/315531554    warning: variable "assigns" is unused (if the variable is not meant to be used, prefix it with an underscore)1555    │1556  8 │   def render(assigns = %{format: :swiftui}) do1557    │              ~~~~~~~1558    │1559    └─ lib/server_web/live/hello_live.ex:8:14: ServerWeb.HelloLive.render/115601561    error: undefined function sigil_SWIFTUI/2 (expected ServerWeb.HelloLive to define such a function or for it to be imported, but none are available)1562    │1563  9 │     ~SWIFTUI"""1564    │     ^^^^^^^^^^^^^1565    │1566    └─ lib/server_web/live/hello_live.ex:9:5: ServerWeb.HelloLive.render/1156715681569== Compilation error in file lib/server_web/live/hello_live.ex ==1570** (CompileError) lib/server_web/live/hello_live.ex: cannot compile module ServerWeb.HelloLive (errors have been logged)15711572could not compile dependency :kino_live_view_native, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile kino_live_view_native --force", update it with "mix deps.update kino_live_view_native" or clean it with "mix deps.clean kino_live_view_native"