paleta

Build log

nerves_system_trellis

paleta 0.1.0 · fail · run paleta-0.1.0-1791031886408
1901 of 1901 lines
1Resolving Hex dependencies...2Resolution completed in 0.252s3Unchanged:4  castore 1.0.215  circular_buffer 1.1.06  combine 0.10.07  earmark 1.4.49 RETIRED! VULNERABLE!8    (deprecated) Earmark is no longer maintained. Migrate to a replacement, for example MDEx (https://hex.pm/packages/mdex).910    EEF-CVE-2026-48591 (MEDIUM)11    aka: CVE-2026-48591, GHSA-52mm-h59v-f3c712    Stored XSS via unescaped HTML attribute values in earmark13    https://osv.dev/vulnerability/EEF-CVE-2026-4859114  elixir_make 0.10.015  esbuild 0.10.016  expo 1.1.117  gettext 0.26.218  heroicons 0.5.619  inflex 2.1.020  interactive_cmd 0.1.421  jason 1.4.522  makeup 1.2.223  makeup_elixir 0.16.224  mime 2.0.725  nerves 2.0.0-pre.226  nerves_discovery 0.1.527  nerves_logging 0.2.428  nerves_runtime 0.13.1329  nerves_system_bbb 2.30.230  nerves_system_br 1.34.431  nerves_system_mangopi_mq_pro 0.17.232  nerves_system_qemu_aarch64 0.4.233  nerves_system_rpi0 2.1.234  nerves_system_rpi4 2.1.235  nerves_system_rpi5 2.1.236  nerves_system_trellis 0.5.037  nerves_system_x86_64 1.34.238  nerves_toolchain_aarch64_nerves_linux_gnu 15.3.139  nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.140  nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.141  nerves_toolchain_riscv64_nerves_linux_gnu 15.3.142  nerves_toolchain_x86_64_nerves_linux_musl 15.3.143  nerves_uevent 0.1.744  nimble_parsec 1.4.245  paleta 0.1.046  phoenix 1.7.2447  phoenix_html 3.3.448  phoenix_live_view 0.20.17 VULNERABLE!49    EEF-CVE-2026-64941 (LOW)50    aka: CVE-2026-64941, GHSA-36m4-rm57-3prf51    Open redirect in Phoenix.LiveView.validate_local_url!/2 via ASCII tab, LF and CR52    https://osv.dev/vulnerability/EEF-CVE-2026-6494153  phoenix_pubsub 2.3.054  phoenix_template 1.1.055  plug 1.20.356  plug_crypto 2.2.057  property_table 0.3.458  ring_logger 0.11.759  tablet 0.3.360  tailwind 0.5.161  telemetry 1.4.262  timex 3.7.1363  toolshed 0.5.064  tzdata 1.2.265  uboot_env 1.0.266  websock 0.5.367  websock_adapter 0.5.968* Getting paleta (Hex package)69* Getting nerves (Hex package)70* Getting ring_logger (Hex package)71* Getting toolshed (Hex package)72* Getting nerves_runtime (Hex package)73* Getting nerves_system_bbb (Hex package)74* Getting nerves_system_mangopi_mq_pro (Hex package)75* Getting nerves_system_qemu_aarch64 (Hex package)76* Getting nerves_system_rpi0 (Hex package)77* Getting nerves_system_rpi4 (Hex package)78* Getting nerves_system_rpi5 (Hex package)79* Getting nerves_system_trellis (Hex package)80* Getting nerves_system_x86_64 (Hex package)81* Getting nerves_system_br (Hex package)82* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)83* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)84* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)85* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)86* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)87* Getting nerves_logging (Hex package)88* Getting nerves_uevent (Hex package)89* Getting uboot_env (Hex package)90* Getting elixir_make (Hex package)91* Getting property_table (Hex package)92* Getting circular_buffer (Hex package)93* Getting interactive_cmd (Hex package)94* Getting nerves_discovery (Hex package)95* Getting tablet (Hex package)96* Getting earmark (Hex package)97* Getting esbuild (Hex package)98* Getting heroicons (Hex package)99* Getting inflex (Hex package)100* Getting jason (Hex package)101* Getting makeup (Hex package)102* Getting makeup_elixir (Hex package)103* Getting phoenix_html (Hex package)104* Getting phoenix_live_view (Hex package)105* Getting tailwind (Hex package)106* Getting timex (Hex package)107* Getting combine (Hex package)108* Getting gettext (Hex package)109* Getting tzdata (Hex package)110* Getting expo (Hex package)111* Getting phoenix (Hex package)112* Getting phoenix_template (Hex package)113* Getting plug (Hex package)114* Getting telemetry (Hex package)115* Getting mime (Hex package)116* Getting plug_crypto (Hex package)117* Getting castore (Hex package)118* Getting phoenix_pubsub (Hex package)119* Getting websock_adapter (Hex package)120* Getting websock (Hex package)121* Getting nimble_parsec (Hex package)122Found retired packages, see above for details123Found packages with security advisories, see above for details124==> nerves_system_br125Generated nerves_system_br app126==> combine127Compiling 6 files (.ex)128    warning: the variable "n" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator129    │130 26 │       <<bits::bitstring-size(n), rest::bitstring>> ->131    │                              ~132    │133    └─ lib/combine/parsers/binary.ex:26:30: Combine.Parsers.Binary.bits_impl/2134135    warning: the variable "bits_size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator136    │137 48 │       <<bits::bitstring-size(bits_size), rest::bitstring>> ->138    │                              ~139    │140    └─ lib/combine/parsers/binary.ex:48:30: Combine.Parsers.Binary.bytes_impl/2141142    warning: the variable "size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator143    │144 70 │           <<int::big-unsigned-size(size), rest::bitstring>> ->145    │                                    ~146    │147    └─ lib/combine/parsers/binary.ex:70:36: Combine.Parsers.Binary.uint_impl/3148149    warning: the variable "size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator150    │151 77 │           <<int::little-unsigned-size(size), rest::bitstring>> ->152    │                                       ~153    │154    └─ lib/combine/parsers/binary.ex:77:39: Combine.Parsers.Binary.uint_impl/3155156     warning: the variable "size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator157     │158 101 │           <<int::big-signed-size(size), rest::bitstring>> ->159     │                                  ~160     │161     └─ lib/combine/parsers/binary.ex:101:34: Combine.Parsers.Binary.int_impl/3162163     warning: the variable "size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator164     │165 108 │           <<int::little-signed-size(size), rest::bitstring>> ->166     │                                     ~167     │168     └─ lib/combine/parsers/binary.ex:108:37: Combine.Parsers.Binary.int_impl/3169170     warning: the variable "size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator171     │172 128 │       <<num::float-size(size), rest::bitstring>> ->173     │                         ~174     │175     └─ lib/combine/parsers/binary.ex:128:25: Combine.Parsers.Binary.float_impl/2176177     warning: the variable "byte_size" (context Combine.Parsers.Text) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator178     │179 432 │         <<^expected::binary-size(byte_size), rest::binary>> ->180     │                                  ~181     │182     └─ lib/combine/parsers/text.ex:432:34: Combine.Parsers.Text.string_impl/2183184     warning: the following clause is redundant:185186         defp word_of_impl(%Combine.ParserState{...} = state, _pattern)187188     it has type:189190         dynamic(%Combine.ParserState{status: :ok}), dynamic()191192     previous clauses have already matched on the following types:193194         %Combine.ParserState{status: :error}, term()195         %Combine.ParserState{status: :ok}, term()196197     │198 488 │   defp word_of_impl(%ParserState{status: :ok} = state, _pattern) do199     │        ~200     │201     └─ lib/combine/parsers/text.ex:488:8: Combine.Parsers.Text.word_of_impl/2202203Generated combine app204==> mime205Compiling 1 file (.ex)206Generated mime app207==> circular_buffer208Compiling 1 file (.ex)209Generated circular_buffer app210==> jason211Compiling 10 files (.ex)212Generated jason app213==> esbuild214Compiling 4 files (.ex)215Generated esbuild app216==> plug_crypto217Compiling 5 files (.ex)218Generated plug_crypto app219==> tzdata220Compiling 18 files (.ex)221Generated tzdata app222==> tablet223Compiling 2 files (.ex)224Generated tablet app225==> inflex226Compiling 6 files (.ex)227Generated inflex app228==> elixir_make229Compiling 8 files (.ex)230Generated elixir_make app231==> nerves_logging232 CC kmsg_tailer.o233 LD kmsg_tailer234Compiling 5 files (.ex)235Generated nerves_logging app236==> castore237Compiling 1 file (.ex)238Generated castore app239==> earmark240Compiling 2 files (.xrl)241Compiling 1 file (.yrl)242Compiling 3 files (.erl)243Compiling 61 files (.ex)244    warning: unused require Logger245    │246  3 │   require Logger247    │   ~248    │249    └─ lib/earmark_parser/line_scanner.ex:3:3250251     warning: this clause of defp _maybe_remove_paras/2 is never used (or it will always fail/warn when invoked)252     │253 616 │   defp _maybe_remove_paras(ast, %Options{inner_html: true}) do254     │        ~255     │256     └─ lib/earmark/transform.ex:616:8: Earmark.Transform._maybe_remove_paras/2257258Generated earmark app259==> nerves_discovery260Compiling 5 files (.ex)261Generated nerves_discovery app262==> ring_logger263Compiling 7 files (.ex)264Generated ring_logger app265==> interactive_cmd266Compiling 1 file (.ex)267Generated interactive_cmd app268==> nerves269Compiling 65 files (.ex)270    warning: redefining module Mix.Tasks.Nerves.Init (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Mix.Tasks.Nerves.Init.beam)271    │272  6 │ defmodule Mix.Tasks.Nerves.Init do273    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~274    │275    └─ lib/mix/tasks/nerves.init.ex:6: Mix.Tasks.Nerves.Init (module)276277    warning: redefining module Nerves (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.beam)278    │279  6 │ defmodule Nerves do280    │ ~~~~~~~~~~~~~~~~~~~281    │282    └─ lib/nerves.ex:6: Nerves (module)283284    warning: redefining module Nerves.ArtifactResolver (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.ArtifactResolver.beam)285    │286  5 │ defmodule Nerves.ArtifactResolver do287    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~288    │289    └─ lib/nerves/artifact_resolver.ex:5: Nerves.ArtifactResolver (module)290291    warning: redefining module Nerves.BuildAction.AppModes (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.AppModes.beam)292    │293  6 │ defmodule Nerves.BuildAction.AppModes do294    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~295    │296    └─ lib/nerves/build_action/app_modes.ex:6: Nerves.BuildAction.AppModes (module)297298    warning: redefining module Nerves.BuildAction.CheckExecutables (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.CheckExecutables.beam)299    │300  5 │ defmodule Nerves.BuildAction.CheckExecutables do301    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~302    │303    └─ lib/nerves/build_action/check_executables.ex:5: Nerves.BuildAction.CheckExecutables (module)304305    warning: redefining module Nerves.BuildAction.Erlinit (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.Erlinit.beam)306    │307  8 │ defmodule Nerves.BuildAction.Erlinit do308    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~309    │310    └─ lib/nerves/build_action/erlinit.ex:8: Nerves.BuildAction.Erlinit (module)311312    warning: redefining module Nerves.BuildAction.Firmware (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.Firmware.beam)313    │314  5 │ defmodule Nerves.BuildAction.Firmware do315    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~316    │317    └─ lib/nerves/build_action/firmware.ex:5: Nerves.BuildAction.Firmware (module)318319    warning: redefining module Nerves.BuildAction.IExStartupCheck (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.IExStartupCheck.beam)320    │321  7 │ defmodule Nerves.BuildAction.IExStartupCheck do322    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~323    │324    └─ lib/nerves/build_action/iex_startup_check.ex:7: Nerves.BuildAction.IExStartupCheck (module)325326    warning: redefining module Nerves.BuildAction.NervesV1System (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1System.beam)327    │328  5 │ defmodule Nerves.BuildAction.NervesV1System do329    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~330    │331    └─ lib/nerves/build_action/nerves_v1_system.ex:5: Nerves.BuildAction.NervesV1System (module)332333    warning: redefining module Nerves.BuildAction.NervesV1Toolchain (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1Toolchain.beam)334    │335  5 │ defmodule Nerves.BuildAction.NervesV1Toolchain do336    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~337    │338    └─ lib/nerves/build_action/nerves_v1_toolchain.ex:5: Nerves.BuildAction.NervesV1Toolchain (module)339340    warning: redefining module Nerves.BuildAction.Rootfs (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.Rootfs.beam)341    │342  5 │ defmodule Nerves.BuildAction.Rootfs do343    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~344    │345    └─ lib/nerves/build_action/rootfs.ex:5: Nerves.BuildAction.Rootfs (module)346347    warning: redefining module Nerves.BuildAction.SortApps (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.SortApps.beam)348    │349  6 │ defmodule Nerves.BuildAction.SortApps do350    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~351    │352    └─ lib/nerves/build_action/sort_apps.ex:6: Nerves.BuildAction.SortApps (module)353354    warning: redefining module Nerves.BuildAction.StripAll (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.StripAll.beam)355    │356  5 │ defmodule Nerves.BuildAction.StripAll do357    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~358    │359    └─ lib/nerves/build_action/strip_all.ex:5: Nerves.BuildAction.StripAll (module)360361    warning: redefining module Nerves.BuildAction.Trimmer (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildAction.Trimmer.beam)362    │363  5 │ defmodule Nerves.BuildAction.Trimmer do364    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~365    │366    └─ lib/nerves/build_action/trimmer.ex:5: Nerves.BuildAction.Trimmer (module)367368    warning: redefining module Nerves.BuildPlan (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildPlan.beam)369    │370  5 │ defmodule Nerves.BuildPlan do371    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~372    │373    └─ lib/nerves/build_plan.ex:5: Nerves.BuildPlan (module)374375    warning: redefining module Nerves.BuildPlan.Checks (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.BuildPlan.Checks.beam)376    │377  5 │ defmodule Nerves.BuildPlan.Checks do378    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~379    │380    └─ lib/nerves/build_plan/checks.ex:5: Nerves.BuildPlan.Checks (module)381382    warning: redefining module Nerves.Container (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.Container.beam)383    │384  6 │ defmodule Nerves.Container do385    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~386    │387    └─ lib/nerves/container.ex:6: Nerves.Container (module)388389    warning: redefining module Nerves.Fingerprint (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.Fingerprint.beam)390    │391  5 │ defmodule Nerves.Fingerprint do392    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~393    │394    └─ lib/nerves/fingerprint.ex:5: Nerves.Fingerprint (module)395396    warning: redefining module Nerves.MixPackage (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.MixPackage.beam)397    │398  5 │ defmodule Nerves.MixPackage do399    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~400    │401    └─ lib/nerves/mix_package.ex:5: Nerves.MixPackage (module)402403    warning: redefining module Nerves.Paths (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.Paths.beam)404    │405  5 │ defmodule Nerves.Paths do406    │ ~~~~~~~~~~~~~~~~~~~~~~~~~407    │408    └─ lib/nerves/paths.ex:5: Nerves.Paths (module)409410    warning: redefining module Nerves.TargetTuple (current version loaded from /work/proj/_build/trellis/lib/nerves/ebin/Elixir.Nerves.TargetTuple.beam)411    │412  5 │ defmodule Nerves.TargetTuple do413    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~414    │415    └─ lib/nerves/target_tuple.ex:5: Nerves.TargetTuple (module)416417Generated nerves app418==> nerves_toolchain_armv7_nerves_linux_gnueabihf419Compiling 1 file (.ex)420Generated nerves_toolchain_armv7_nerves_linux_gnueabihf app421==> nerves_system_trellis422Generated nerves_system_trellis app423==> nimble_parsec424Compiling 4 files (.ex)425Generated nimble_parsec app426==> makeup427Compiling 15 files (.ex)428Generated makeup app429==> makeup_elixir430Compiling 6 files (.ex)431Compiling lib/makeup/lexers/elixir_lexer/variables.ex (it's taking more than 10s)432Compiling lib/makeup/lexers/elixir_lexer.ex (it's taking more than 10s)433Generated makeup_elixir app434==> nerves_compatibility_test435===> Analyzing applications...436===> Compiling telemetry437==> expo438Compiling 2 files (.erl)439Compiling 22 files (.ex)440Generated expo app441==> gettext442Compiling 18 files (.ex)443     warning: unused require Gettext.Macros444     │445 594 │   require Gettext.Macros446     │   ~447     │448     └─ lib/gettext.ex:594:3449450     warning: the following clause is redundant:451452         defp ensure_empty_msgstr!(%Expo.Message.Plural{} = message)453454     it has type:455456         dynamic(%Expo.Message.Plural{})457458     previous clauses have already matched on the following types:459460         %Expo.Message.Singular{}461         %Expo.Message.Plural{}462463     │464 391 │   defp ensure_empty_msgstr!(%Message.Plural{} = message) do465     │        ~466     │467     └─ lib/gettext/extractor.ex:391:8: Gettext.Extractor.ensure_empty_msgstr!/1468469     warning: Kernel.ParallelCompiler.async/1 is deprecated. Use `pmap/2` instead470     │471 426 │               Kernel.ParallelCompiler.async(fn ->472     │                                       ~473     │474     └─ lib/gettext/compiler.ex:426:39: Gettext.Compiler.compile_po_files/3475476Generated gettext app477==> phoenix_pubsub478Compiling 12 files (.ex)479Generated phoenix_pubsub app480==> plug481Compiling 1 file (.erl)482Compiling 42 files (.ex)483Generated plug app484==> phoenix_html485Compiling 9 files (.ex)486    warning: comparison between distinct types found:487488        id == nil489490    given types:491492        dynamic(not false and not nil and not binary()) == nil493494    where "id" was given the types:495496        # type: dynamic(not false and not nil)497        # from: lib/phoenix_html/form_data.ex:92:8498        id = Keyword.get(opts, :id) || name499500        # type: dynamic(not false and not nil and not binary())501        # from: lib/phoenix_html/form_data.ex:94:12502        is_binary(id)503504    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 false505506    type warning found at:507    │508 94 │     unless is_binary(id) or is_nil(id) do509    │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~510    │511    └─ lib/phoenix_html/form_data.ex:94: Phoenix.HTML.FormData.Atom.to_form/2512513    warning: the 1st pattern in clause will never match:514515        60516517    because it is expected to receive type:518519        dynamic(empty_list() or non_empty_list(term(), term()))520521    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())522523    type warning found at:524    │525 56 │   def to_iodata(?<), do: "&lt;"526    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~527    │528    └─ lib/phoenix_html/safe.ex:56: Phoenix.HTML.Safe.List.to_iodata/1529530    warning: the 1st pattern in clause will never match:531532        62533534    because it is expected to receive type:535536        dynamic(empty_list() or non_empty_list(term(), term()))537538    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())539540    type warning found at:541    │542 57 │   def to_iodata(?>), do: "&gt;"543    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~544    │545    └─ lib/phoenix_html/safe.ex:57: Phoenix.HTML.Safe.List.to_iodata/1546547    warning: the 1st pattern in clause will never match:548549        38550551    because it is expected to receive type:552553        dynamic(empty_list() or non_empty_list(term(), term()))554555    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())556557    type warning found at:558    │559 58 │   def to_iodata(?&), do: "&amp;"560    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~561    │562    └─ lib/phoenix_html/safe.ex:58: Phoenix.HTML.Safe.List.to_iodata/1563564    warning: the 1st pattern in clause will never match:565566        34567568    because it is expected to receive type:569570        dynamic(empty_list() or non_empty_list(term(), term()))571572    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())573574    type warning found at:575    │576 59 │   def to_iodata(?"), do: "&quot;"577    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~578    │579    └─ lib/phoenix_html/safe.ex:59: Phoenix.HTML.Safe.List.to_iodata/1580581    warning: the 1st pattern in clause will never match:582583        39584585    because it is expected to receive type:586587        dynamic(empty_list() or non_empty_list(term(), term()))588589    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())590591    type warning found at:592    │593 60 │   def to_iodata(?'), do: "&#39;"594    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~595    │596    └─ lib/phoenix_html/safe.ex:60: Phoenix.HTML.Safe.List.to_iodata/1597598    warning: the 1st pattern in clause will never match:599600        {:safe, data}601602    because it is expected to receive type:603604        dynamic(empty_list() or non_empty_list(term(), term()))605606    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())607608    type warning found at:609    │610 76 │   def to_iodata({:safe, data}) do611    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~612    │613    └─ lib/phoenix_html/safe.ex:76: Phoenix.HTML.Safe.List.to_iodata/1614615    warning: the following clause is redundant:616617        def to_iodata(other)618619    it has type:620621        dynamic(empty_list() or non_empty_list(term(), term()))622623    previous clauses have already matched on the following types:624625        non_empty_list(term(), term())626        empty_list()627628    │629 80 │   def to_iodata(other) do630    │       ~631    │632    └─ lib/phoenix_html/safe.ex:80:7: Phoenix.HTML.Safe.List.to_iodata/1633634    warning: the 1st pattern in clause will never match:635636        h637638    because it is expected to receive type:639640        dynamic(empty_list() or non_empty_list(term(), term()))641642    where "h" was given the type:643644        # type: integer()645        # from: lib/phoenix_html/safe.ex:62:25646        is_integer(h)647648    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())649650    type warning found at:651    │652 62 │   def to_iodata(h) when is_integer(h) and h <= 255 do653    │                 ~654    │655    └─ lib/phoenix_html/safe.ex:62:17: Phoenix.HTML.Safe.List.to_iodata/1656657    warning: the 1st pattern in clause will never match:658659        h660661    because it is expected to receive type:662663        dynamic(empty_list() or non_empty_list(term(), term()))664665    where "h" was given the type:666667        # type: integer()668        # from: lib/phoenix_html/safe.ex:66:25669        is_integer(h)670671    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())672673    type warning found at:674    │675 66 │   def to_iodata(h) when is_integer(h) do676    │                 ~677    │678    └─ lib/phoenix_html/safe.ex:66:17: Phoenix.HTML.Safe.List.to_iodata/1679680    warning: the 1st pattern in clause will never match:681682        h683684    because it is expected to receive type:685686        dynamic(empty_list() or non_empty_list(term(), term()))687688    where "h" was given the type:689690        # type: binary()691        # from: lib/phoenix_html/safe.ex:72:25692        is_binary(h)693694    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())695696    type warning found at:697    │698 72 │   def to_iodata(h) when is_binary(h) do699    │                 ~700    │701    └─ lib/phoenix_html/safe.ex:72:17: Phoenix.HTML.Safe.List.to_iodata/1702703Generated phoenix_html app704==> phoenix_template705Compiling 4 files (.ex)706Generated phoenix_template app707==> uboot_env708Compiling 5 files (.ex)709Generated uboot_env app710==> timex711Compiling 62 files (.ex)712    warning: default arguments in protocol definitions is deprecated713    │714 84 │   def compare(a, b, granularity \\ :microsecond)715    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~716    │717    └─ lib/comparable/comparable.ex:84: Timex.Comparable (module)718719     warning: default arguments in protocol definitions is deprecated720     │721 139 │   def diff(a, b, granularity \\ :microsecond)722     │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~723     │724     └─ lib/comparable/comparable.ex:139: Timex.Comparable (module)725726    warning: protocols can only define functions without implementation via def/1, found: compare/2, diff/2727    │728  1 │ defprotocol Timex.Comparable do729    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~730    │731    └─ lib/comparable/comparable.ex:1: Timex.Comparable (module)732733     warning: the variable "len" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator734     │735 317 │     <<abbrevs::bytes(len), rest::binary>> = data736     │                      ~737     │738     └─ lib/parse/zoneinfo/parser.ex:317:22: Timex.Parse.ZoneInfo.Parser.parse_abbreviations/4739740    warning: default arguments in protocol definitions is deprecated741    │742 48 │   def to_datetime(datetime, timezone \\ :utc)743    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~744    │745    └─ lib/protocol.ex:48: Timex.Protocol (module)746747    warning: protocols can only define functions without implementation via def/1, found: to_datetime/1748    │749  1 │ defprotocol Timex.Protocol do750    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~751    │752    └─ lib/protocol.ex:1: Timex.Protocol (module)753754    warning: unused require Timex.Macros755    │756  5 │   require Timex.Macros757    │   ~758    │759    └─ lib/comparable/tuple.ex:5:3760761    warning: unused require Timex.Macros762    │763  5 │   require Timex.Macros764    │   ~765    │766    └─ lib/comparable/naivedatetime.ex:5:3767768    warning: unused require Bitwise769    │770  5 │   require Bitwise771    │   ~772    │773    └─ lib/calendar/julian.ex:5:3774775Compiling lib/l10n/gettext.ex (it's taking more than 10s)776     warning: the following clause will never match:777778         {ty, a, b} when ty === :gap or ty === :ambiguous ->779780     it is expected to match on type:781782         dynamic({:error, term()} and not {:ok, %{..., time_zone: term()}})783784     where "ty" was given the type:785786         # type: :ambiguous or :gap787         # from: lib/timezone/timezone.ex:548788         ty in [:gap, :ambiguous]789790     type warning found at:791     │792 548 │       {ty, a, b} when ty in [:gap, :ambiguous] ->793     │       ~794     │795     └─ lib/timezone/timezone.ex:548:7: Timex.Timezone.convert/2796797     warning: a struct for Timex.PosixTimezone is expected on struct update:798799         %Timex.PosixTimezone{rule | std_abbr: abbr}800801     but got type:802803         dynamic()804805     where "rule" was given the type:806807         # type: dynamic()808         # from: lib/parse/posix/parser.ex:119:33809         rule810811     when defining the variable "rule", you must also pattern match on "%Timex.PosixTimezone{}"812813     type warning found at:814     │815 121 │       parse_tz(:std_offset, rest, %TZ{rule | std_abbr: abbr})816     │                                   ~817     │818     └─ lib/parse/posix/parser.ex:121:35: Timex.Parse.Timezones.Posix.parse_tz/3819820     warning: a struct for Timex.PosixTimezone is expected on struct update:821822         %Timex.PosixTimezone{rule | std_offset: offset}823824     but got type:825826         dynamic()827828     where "rule" was given the type:829830         # type: dynamic()831         # from: lib/parse/posix/parser.ex:125:35832         rule833834     when defining the variable "rule", you must also pattern match on "%Timex.PosixTimezone{}"835836     type warning found at:837     │838 127 │       parse_tz(:dst_abbr, rest, %TZ{rule | std_offset: offset})839     │                                 ~840     │841     └─ lib/parse/posix/parser.ex:127:33: Timex.Parse.Timezones.Posix.parse_tz/3842843     warning: a struct for Timex.PosixTimezone is expected on struct update:844845         %Timex.PosixTimezone{rule | dst_abbr: abbr}846847     but got type:848849         dynamic()850851     where "rule" was given the type:852853         # type: dynamic()854         # from: lib/parse/posix/parser.ex:141:33855         rule856857     when defining the variable "rule", you must also pattern match on "%Timex.PosixTimezone{}"858859     type warning found at:860     │861 143 │          rule = %TZ{rule | dst_abbr: abbr} do862     │                 ~863     │864     └─ lib/parse/posix/parser.ex:143:17: Timex.Parse.Timezones.Posix.parse_tz/3865866     warning: a struct for Timex.PosixTimezone is expected on struct update:867868         %Timex.PosixTimezone{rule | dst_offset: offset}869870     but got type:871872         dynamic()873874     where "rule" was given the type:875876         # type: dynamic()877         # from: lib/parse/posix/parser.ex:160:35878         rule879880     when defining the variable "rule", you must also pattern match on "%Timex.PosixTimezone{}"881882     type warning found at:883     │884 162 │          rule = %TZ{rule | dst_offset: offset} do885     │                 ~886     │887     └─ lib/parse/posix/parser.ex:162:17: Timex.Parse.Timezones.Posix.parse_tz/3888889     warning: a struct for Timex.PosixTimezone is expected on struct update:890891         %Timex.PosixTimezone{rule | dst_start: dst_start, dst_end: dst_end}892893     but got type:894895         dynamic()896897     where "rule" was given the type:898899         # type: dynamic()900         # from: lib/parse/posix/parser.ex:185:36901         rule902903     when defining the variable "rule", you must also pattern match on "%Timex.PosixTimezone{}"904905     type warning found at:906     │907 190 │           {:ok, %TZ{rule | dst_start: dst_start, dst_end: dst_end}, rest}908     │                 ~909     │910     └─ lib/parse/posix/parser.ex:190:17: Timex.Parse.Timezones.Posix.parse_tz/3911912     warning: the following clause will never match:913914         :error ->915916     it is expected to match on type:917918         dynamic({:error, :invalid_number, binary()})919920     type warning found at:921     │922 264 │       :error ->923     │       ~~~~~~~~~924     │925     └─ lib/parse/posix/parser.ex:264: Timex.Parse.Timezones.Posix.parse_month_week_day/3926927    warning: the following pattern will never match:928929        {y, m, d} <- to_erl_datetime(date)930931    because the right-hand side has type:932933        dynamic(934          {:error, :invalid_date} or935            {:ok, {{integer(), integer(), integer()}, {integer(), integer(), integer()}}}936        )937938    where "date" was given the type:939940        # type: dynamic({...})941        # from: lib/datetime/erlang.ex:7:17942        date943944    type warning found at:945    │946  8 │     with {y, m, d} <- to_erl_datetime(date),947    │          ~948    │949    └─ lib/datetime/erlang.ex:8:10: Timex.Protocol.Tuple.to_julian/1950951     warning: the following clause is redundant:952953         def shift(_, _)954955     it has type:956957         dynamic(%Date{}), dynamic()958959     previous clauses have already matched on the following types:960961         %Date{}, term()962963     │964 227 │   def shift(_, _), do: {:error, :badarg}965     │       ~966     │967     └─ lib/date/date.ex:227:7: Timex.Protocol.Date.shift/2968969     warning: a struct for Timex.Parse.ZoneInfo.Parser.Zone is expected on struct update:970971         %Timex.Parse.ZoneInfo.Parser.Zone{zone | transitions: transitions, leaps: leaps}972973     but got type:974975         dynamic(%{..., leaps: term(), transitions: term()})976977     where "zone" was given the types:978979         # type: dynamic(%{..., rule: term()} or %{..., transitions: term()})980         # from: lib/parse/zoneinfo/parser.ex:156:28981         {:ok, zone, rest} <- parse_content(1, data, %Timex.Parse.ZoneInfo.Parser.Zone{..., version: 1})982983         # type: dynamic(%{..., transitions: term()})984         # from: lib/parse/zoneinfo/parser.ex:157:26985         Enum.sort_by(zone.transitions, fn tx -> tx.starts_at end)986987         # type: dynamic(%{..., leaps: term(), transitions: term()})988         # from: lib/parse/zoneinfo/parser.ex:158:20989         Enum.sort_by(zone.leaps, fn leap -> leap.epoch end)990991     when defining the variable "zone", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Zone{}"992993     type warning found at:994     │995 159 │       {:ok, %Zone{zone | transitions: transitions, leaps: leaps}, rest}996     │             ~997     │998     └─ lib/parse/zoneinfo/parser.ex:159:13: Timex.Parse.ZoneInfo.Parser.parse_versioned_content/29991000     warning: a struct for Timex.Parse.ZoneInfo.Parser.Zone is expected on struct update:10011002         %Timex.Parse.ZoneInfo.Parser.Zone{zone | transitions: times}10031004     but got type:10051006         dynamic()10071008     where "zone" was given the type:10091010         # type: dynamic()1011         # from: lib/parse/zoneinfo/parser.ex:270:921012         zone10131014     when defining the variable "zone", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Zone{}"10151016     type warning found at:1017     │1018 272 │     parse_transition_info(version, rest, header, %Zone{zone | transitions: times})1019     │                                                  ~1020     │1021     └─ lib/parse/zoneinfo/parser.ex:272:50: Timex.Parse.ZoneInfo.Parser.parse_transition_times/410221023     warning: a struct for Timex.Parse.ZoneInfo.Parser.Zone is expected on struct update:10241025         %Timex.Parse.ZoneInfo.Parser.Zone{zone | leaps: leaps}10261027     but got type:10281029         dynamic()10301031     where "zone" was given the type:10321033         # type: dynamic()1034         # from: lib/parse/zoneinfo/parser.ex:330:791035         zone10361037     when defining the variable "zone", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Zone{}"10381039     type warning found at:1040     │1041 344 │     parse_flags(version, rest, header, %Zone{zone | leaps: leaps})1042     │                                        ~1043     │1044     └─ lib/parse/zoneinfo/parser.ex:344:40: Timex.Parse.ZoneInfo.Parser.parse_leap_seconds/410451046     warning: a struct for Timex.Parse.ZoneInfo.Parser.Zone is expected on struct update:10471048         %Timex.Parse.ZoneInfo.Parser.Zone{zone | transitions: transitions}10491050     but got type:10511052         dynamic(%{..., transitions: term()})10531054     where "zone" was given the type:10551056         # type: dynamic(%{..., transitions: term()})1057         # from: lib/parse/zoneinfo/parser.ex:354:151058         Enum.with_index(zone.transitions)10591060     when defining the variable "zone", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Zone{}"10611062     type warning found at:1063     │1064 362 │       parse_posixtz_string(version, rest, %Zone{zone | transitions: transitions})1065     │                                           ~1066     │1067     └─ lib/parse/zoneinfo/parser.ex:362:43: Timex.Parse.ZoneInfo.Parser.parse_flags/410681069     warning: a struct for Timex.Parse.ZoneInfo.Parser.Zone is expected on struct update:10701071         %Timex.Parse.ZoneInfo.Parser.Zone{zone | transitions: transitions}10721073     but got type:10741075         dynamic(%{..., transitions: term()})10761077     where "zone" was given the type:10781079         # type: dynamic(%{..., transitions: term()})1080         # from: lib/parse/zoneinfo/parser.ex:354:151081         Enum.with_index(zone.transitions)10821083     when defining the variable "zone", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Zone{}"10841085     type warning found at:1086     │1087 364 │       {:ok, %Zone{zone | transitions: transitions}, rest}1088     │             ~1089     │1090     └─ lib/parse/zoneinfo/parser.ex:364:13: Timex.Parse.ZoneInfo.Parser.parse_flags/410911092     warning: a struct for Timex.Parse.ZoneInfo.Parser.Zone is expected on struct update:10931094         %Timex.Parse.ZoneInfo.Parser.Zone{zone | rule: rule}10951096     but got type:10971098         dynamic()10991100     where "zone" was given the type:11011102         # type: dynamic()1103         # from: lib/parse/zoneinfo/parser.ex:369:621104         zone11051106     when defining the variable "zone", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Zone{}"11071108     type warning found at:1109     │1110 372 │       {:ok, %Zone{zone | rule: rule}, format_rest <> rest}1111     │             ~1112     │1113     └─ lib/parse/zoneinfo/parser.ex:372:13: Timex.Parse.ZoneInfo.Parser.parse_posixtz_string/311141115     warning: a struct for Timex.Parse.ZoneInfo.Parser.Rule is expected on struct update:11161117         %Timex.Parse.ZoneInfo.Parser.Rule{rule | std_abbr: abbr, dst_abbr: abbr}11181119     but got type:11201121         dynamic()11221123     where "rule" was given the type:11241125         # type: dynamic()1126         # from: lib/parse/zoneinfo/parser.ex:383:331127         rule11281129     when defining the variable "rule", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Rule{}"11301131     type warning found at:1132     │1133 385 │       parse_tz(:std_offset, rest, %Rule{rule | std_abbr: abbr, dst_abbr: abbr})1134     │                                   ~1135     │1136     └─ lib/parse/zoneinfo/parser.ex:385:35: Timex.Parse.ZoneInfo.Parser.parse_tz/311371138     warning: a struct for Timex.Parse.ZoneInfo.Parser.Rule is expected on struct update:11391140         %Timex.Parse.ZoneInfo.Parser.Rule{rule | std_offset: offset, dst_offset: offset}11411142     but got type:11431144         dynamic()11451146     where "rule" was given the type:11471148         # type: dynamic()1149         # from: lib/parse/zoneinfo/parser.ex:389:351150         rule11511152     when defining the variable "rule", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Rule{}"11531154     type warning found at:1155     │1156 391 │       parse_tz(:dst_abbr, rest, %Rule{rule | std_offset: offset, dst_offset: offset})1157     │                                 ~1158     │1159     └─ lib/parse/zoneinfo/parser.ex:391:33: Timex.Parse.ZoneInfo.Parser.parse_tz/311601161     warning: a struct for Timex.Parse.ZoneInfo.Parser.Rule is expected on struct update:11621163         %Timex.Parse.ZoneInfo.Parser.Rule{rule | dst_abbr: abbr}11641165     but got type:11661167         dynamic()11681169     where "rule" was given the type:11701171         # type: dynamic()1172         # from: lib/parse/zoneinfo/parser.ex:405:331173         rule11741175     when defining the variable "rule", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Rule{}"11761177     type warning found at:1178     │1179 407 │          rule = %Rule{rule | dst_abbr: abbr} do1180     │                 ~1181     │1182     └─ lib/parse/zoneinfo/parser.ex:407:17: Timex.Parse.ZoneInfo.Parser.parse_tz/311831184     warning: a struct for Timex.Parse.ZoneInfo.Parser.Rule is expected on struct update:11851186         %Timex.Parse.ZoneInfo.Parser.Rule{rule | dst_offset: offset}11871188     but got type:11891190         dynamic()11911192     where "rule" was given the type:11931194         # type: dynamic()1195         # from: lib/parse/zoneinfo/parser.ex:424:351196         rule11971198     when defining the variable "rule", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Rule{}"11991200     type warning found at:1201     │1202 426 │          rule = %Rule{rule | dst_offset: offset} do1203     │                 ~1204     │1205     └─ lib/parse/zoneinfo/parser.ex:426:17: Timex.Parse.ZoneInfo.Parser.parse_tz/312061207     warning: a struct for Timex.Parse.ZoneInfo.Parser.Rule is expected on struct update:12081209         %Timex.Parse.ZoneInfo.Parser.Rule{rule | start_time: start_time, end_time: end_time}12101211     but got type:12121213         dynamic()12141215     where "rule" was given the type:12161217         # type: dynamic()1218         # from: lib/parse/zoneinfo/parser.ex:449:361219         rule12201221     when defining the variable "rule", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Rule{}"12221223     type warning found at:1224     │1225 454 │           {:ok, %Rule{rule | start_time: start_time, end_time: end_time}, rest}1226     │                 ~1227     │1228     └─ lib/parse/zoneinfo/parser.ex:454:17: Timex.Parse.ZoneInfo.Parser.parse_tz/312291230     warning: the following clause will never match:12311232         :error ->12331234     it is expected to match on type:12351236         dynamic({:error, :invalid_number, binary()})12371238     type warning found at:1239     │1240 528 │       :error ->1241     │       ~~~~~~~~~1242     │1243     └─ lib/parse/zoneinfo/parser.ex:528: Timex.Parse.ZoneInfo.Parser.parse_month_week_day/312441245Generated timex app1246==> property_table1247Compiling 8 files (.ex)1248Generated property_table app1249==> nerves_uevent1250 CC uevent.o1251 LD uevent1252Compiling 5 files (.ex)1253Generated nerves_uevent app1254==> nerves_runtime1255Compiling 14 files (.ex)1256Generated nerves_runtime app1257==> toolshed1258Compiling 5 files (.ex)1259Generated toolshed app1260==> tailwind1261Compiling 3 files (.ex)1262Generated tailwind app1263==> websock1264Compiling 1 file (.ex)1265Generated websock app1266==> websock_adapter1267Compiling 4 files (.ex)1268Generated websock_adapter app1269warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1270  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21271  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11272  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51273  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21274  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41275  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/212761277==> phoenix1278Compiling 71 files (.ex)1279    warning: unused require Logger1280    │1281  9 │   require Logger1282    │   ~1283    │1284    └─ lib/phoenix/config.ex:9:312851286     warning: unused require Logger1287     │1288 281 │   require Logger1289     │   ~1290     │1291     └─ lib/phoenix/endpoint.ex:281:312921293    warning: unused require Phoenix.Endpoint1294    │1295  6 │   require Phoenix.Endpoint1296    │   ~1297    │1298    └─ lib/phoenix/controller.ex:6:312991300    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 operator1301    │1302 46 │       <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix1303    │                             ~1304    │1305    └─ lib/phoenix/naming.ex:46:29: Phoenix.Naming.unsuffix/213061307    warning: unused require Phoenix.Endpoint1308    │1309 17 │   require Phoenix.Endpoint1310    │   ~1311    │1312    └─ lib/phoenix/endpoint/render_errors.ex:17:313131314    warning: unused require Phoenix.Endpoint1315    │1316  6 │   require Phoenix.Endpoint1317    │   ~1318    │1319    └─ lib/phoenix/channel/server.ex:6:313201321     warning: unused require Phoenix.Endpoint1322     │1323 202 │   require Phoenix.Endpoint1324     │   ~1325     │1326     └─ lib/phoenix/socket.ex:202:313271328    warning: unused require Logger1329    │1330 70 │   require Logger1331    │   ~1332    │1333    └─ lib/phoenix/socket/pool_supervisor.ex:70:313341335     warning: unused require Logger1336     │1337 100 │   require Logger1338     │   ~1339     │1340     └─ lib/phoenix/token.ex:100:313411342     warning: comparison between distinct types found:13431344         merge_all != []13451346     given types:13471348         dynamic(non_empty_list({atom(), term()})) != empty_list()13491350     where "merge_all" was given the type:13511352         # type: dynamic(non_empty_list({atom(), term()}))1353         # from: lib/phoenix/router/route.ex:121:151354         merge_all = merge_params ++ merge_private ++ merge_assigns13551356     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 false13571358     type warning found at:1359     │1360 123 │     if merge_all != [] do1361     │                  ~1362     │1363     └─ lib/phoenix/router/route.ex:123:18: Phoenix.Router.Route.build_prepare/113641365    warning: a struct for Plug.Conn is expected on struct update:13661367        %Plug.Conn{conn | state: :sent}13681369    but got type:13701371        dynamic()13721373    where "conn" was given the type:13741375        # type: dynamic()1376        # from: lib/phoenix/endpoint/render_errors.ex:55:171377        conn13781379    when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"13801381    type warning found at:1382    │1383 60 │           %Plug.Conn{conn | state: :sent}1384    │           ~1385    │1386    └─ lib/phoenix/endpoint/render_errors.ex:60:11: Phoenix.Endpoint.RenderErrors.__catch__/513871388     warning: a struct for Plug.Conn is expected on struct update:13891390         %Plug.Conn{conn | query_params: %{}, params: %{}}13911392     but got type:13931394         dynamic(%{..., params: %Plug.Conn.Unfetched{}})13951396     where "conn" was given the types:13971398         # type: dynamic(%{..., params: term()})1399         # from: lib/phoenix/endpoint/render_errors.ex:133:171400         conn.params14011402         # type: dynamic(%{..., params: %Plug.Conn.Unfetched{}})1403         # from: lib/phoenix/endpoint/render_errors.ex:133:171404         conn.params14051406     when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"14071408     type warning found at:1409     │1410 134 │         %Plug.Conn.Unfetched{} -> %Plug.Conn{conn | query_params: %{}, params: %{}}1411     │                                   ~1412     │1413     └─ lib/phoenix/endpoint/render_errors.ex:134:35: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/114141415     warning: a struct for Plug.Conn is expected on struct update:14161417         %Plug.Conn{conn | query_params: %{}, params: params}14181419     but got type:14201421         dynamic(%{..., params: not %Plug.Conn.Unfetched{}})14221423     where "conn" was given the types:14241425         # type: dynamic(%{..., params: term()})1426         # from: lib/phoenix/endpoint/render_errors.ex:133:171427         conn.params14281429         # type: dynamic(%{..., params: not %Plug.Conn.Unfetched{}})1430         # from: lib/phoenix/endpoint/render_errors.ex:133:171431         conn.params14321433     when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"14341435     type warning found at:1436     │1437 135 │         params -> %Plug.Conn{conn | query_params: %{}, params: params}1438     │                   ~1439     │1440     └─ lib/phoenix/endpoint/render_errors.ex:135:19: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/114411442      warning: a struct for Plug.Conn is expected on struct update:14431444          %Plug.Conn{conn | params: params}14451446      but got type:14471448          dynamic(%{..., params: map()})14491450      where "conn" was given the type:14511452          # type: dynamic(%{..., params: map()})1453          # from: lib/phoenix/controller.ex:1327:171454          Map.get(conn.params, required_key)14551456      when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"14571458      type warning found at:1459      │1460 1334 │     %Plug.Conn{conn | params: params}1461      │     ~1462      │1463      └─ lib/phoenix/controller.ex:1334:5: Phoenix.Controller.scrub_params/214641465Generated phoenix app1466warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1467  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21468  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11469  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51470  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21471  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41472  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/214731474==> phoenix_live_view1475Compiling 39 files (.ex)1476    warning: unused require Logger1477    │1478 48 │   require Logger1479    │   ~1480    │1481    └─ lib/phoenix_live_view/socket.ex:48:314821483     warning: unused require Phoenix.ChannelTest1484     │1485 183 │   require Phoenix.ChannelTest1486     │   ~1487     │1488     └─ lib/phoenix_live_view/test/live_view_test.ex:183:314891490     warning: unused require Phoenix.ConnTest1491     │1492 182 │   require Phoenix.ConnTest1493     │   ~1494     │1495     └─ lib/phoenix_live_view/test/live_view_test.ex:182:314961497    warning: unused require Phoenix.ChannelTest1498    │1499  5 │   require Phoenix.ChannelTest1500    │   ~1501    │1502    └─ lib/phoenix_live_view/test/upload_client.ex:5:315031504    warning: unused require Logger1505    │1506  6 │   require Logger1507    │   ~1508    │1509    └─ lib/phoenix_live_view/upload_channel.ex:6:315101511     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:15121513         %Phoenix.LiveView.Socket{1514           socket1515           | assigns: Map.merge(temp_assigns, socket.assigns),1516             private:1517               Map.update(1518                 socket.private,1519                 :temporary_assigns,1520                 temp_assigns,1521                 &Map.merge(&1, temp_assigns)1522               )1523         }15241525     but got type:15261527         dynamic()15281529     where "socket" was given the type:15301531         # type: dynamic()1532         # from: lib/phoenix_live_view/utils.ex:415:281533         socket15341535     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"15361537     type warning found at:1538     │1539 422 │     %Socket{1540     │     ~1541     │1542     └─ lib/phoenix_live_view/utils.ex:422:5: Phoenix.LiveView.Utils.handle_mount_option/315431544    warning: the following clause will never match:15451546        {:error, reason} ->15471548    because it attempts to match on the result of:15491550        IO.binwrite(state.file, data)15511552    which has type:15531554        dynamic(not {:error, term()})15551556    type warning found at:1557    │1558 23 │       {:error, reason} -> {:error, reason, state}1559    │       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1560    │1561    └─ lib/phoenix_live_view/upload_tmp_file_writer.ex:23: Phoenix.LiveView.UploadTmpFileWriter.write_chunk/215621563     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:15641565         %Phoenix.LiveView.UploadEntry{1566           entry1567           | preflighted?: entry.preflighted? || Enum.__in__(entry.ref, refs)1568         }15691570     but got type:15711572         dynamic()15731574     where "entry" was given the type:15751576         # type: dynamic()1577         # from: lib/phoenix_live_view/upload_config.ex:362:171578         entry <- conf.entries15791580     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"15811582     type warning found at:1583     │1584 363 │         %UploadEntry{entry | preflighted?: entry.preflighted? || entry.ref in refs}1585     │         ~1586     │1587     └─ lib/phoenix_live_view/upload_config.ex:363:9: Phoenix.LiveView.UploadConfig.mark_preflighted/215881589     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:15901591         %Phoenix.LiveView.UploadEntry{entry | valid?: true, uuid: generate_uuid()}15921593     but got type:15941595         dynamic()15961597     where "entry" was given the type:15981599         # type: dynamic()1600         # from: lib/phoenix_live_view/upload_config.ex:572:301601         entry16021603     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"16041605     type warning found at:1606     │1607 573 │     entry = %UploadEntry{entry | valid?: true, uuid: generate_uuid()}1608     │             ~1609     │1610     └─ lib/phoenix_live_view/upload_config.ex:573:13: Phoenix.LiveView.UploadConfig.put_valid_entry/216111612      warning: the following clause is redundant:16131614          def update(assigns, _key, fun) when is_function(fun, 1) or is_function(fun, 2)16151616      it has type:16171618          dynamic(), dynamic(), dynamic((none() -> term()) or (none(), none() -> term()))16191620      previous clauses have already matched on the following types:16211622          %Phoenix.LiveView.Socket{}, term(), (none(), none() -> term())1623          %Phoenix.LiveView.Socket{}, term(), (none() -> term())1624          term(), term(), (none(), none() -> term())1625          term(), term(), (none() -> term())16261627      │1628 1378 │   def update(assigns, _key, fun) when is_function(fun, 1) or is_function(fun, 2) do1629      │       ~1630      │1631      └─ lib/phoenix_component.ex:1378:7: Phoenix.Component.update/316321633     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:16341635         %Phoenix.LiveView.UploadEntry{entry | valid?: false}16361637     but got type:16381639         dynamic()16401641     where "entry" was given the type:16421643         # type: dynamic()1644         # from: lib/phoenix_live_view/upload_config.ex:585:321645         entry16461647     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"16481649     type warning found at:1650     │1651 586 │     entry = %UploadEntry{entry | valid?: false}1652     │             ~1653     │1654     └─ lib/phoenix_live_view/upload_config.ex:586:13: Phoenix.LiveView.UploadConfig.put_invalid_entry/316551656     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:16571658         %Phoenix.LiveView.UploadEntry{entry | cancelled?: true}16591660     but got type:16611662         dynamic()16631664     where "entry" was given the type:16651666         # type: dynamic()1667         # from: lib/phoenix_live_view/upload_config.ex:669:421668         entry16691670     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"16711672     type warning found at:1673     │1674 669 │         update_entry(conf, entry.ref, fn entry -> %UploadEntry{entry | cancelled?: true} end)1675     │                                                   ~1676     │1677     └─ lib/phoenix_live_view/upload_config.ex:669:51: Phoenix.LiveView.UploadConfig.cancel_entry/216781679    warning: Logger.disable/1 is deprecated. Use Logger.put_process_level(pid, :none) instead1680    │1681 73 │     Logger.disable(self())1682    │            ~1683    │1684    └─ lib/phoenix_live_view/test/client_proxy.ex:73:12: Phoenix.LiveViewTest.ClientProxy.init/116851686     warning: the right-hand side of || (shown as ... below) will never be executed:16871688         conn.private[:live_view_connect_info] || prune_conn(conn) || ...16891690     because the left-hand side always evaluates to:16911692         dynamic(not false and not nil)16931694     where "conn" was given the types:16951696         # type: dynamic(%Plug.Conn{assigns: %{..., live_module: term()}, status: integer()})1697         # from: lib/phoenix_live_view/test/live_view_test.ex:319:721698         %Plug.Conn{status: 200, assigns: %{live_module: live_module}} = conn16991700         # type: dynamic(%Plug.Conn{1701           assigns: %{..., live_module: term()},1702           private:1703             %{..., __struct__: atom()} or nil or empty_list() or non_empty_list(term(), term()) or1704               non_struct_map(),1705           status: integer()1706         })1707         # from: lib/phoenix_live_view/test/live_view_test.ex:333:351708         conn.private[:live_view_connect_params]17091710     type warning found at:1711     │1712 334 │       connect_info: conn.private[:live_view_connect_info] || prune_conn(conn) || %{},1713     │       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1714     │1715     └─ lib/phoenix_live_view/test/live_view_test.ex:334: Phoenix.LiveViewTest.connect_from_static_token/217161717     warning: a struct for Phoenix.LiveViewTest.ClientProxy is expected on struct update:17181719         %Phoenix.LiveViewTest.ClientProxy{view | rendered: rendered}17201721     but got type:17221723         dynamic(%{..., rendered: map()})17241725     where "view" was given the type:17261727         # type: dynamic(%{..., rendered: map()})1728         # from: lib/phoenix_live_view/test/client_proxy.ex:727:261729         Phoenix.LiveViewTest.DOM.merge_diff(view.rendered, diff)17301731     when defining the variable "view", you must also pattern match on "%Phoenix.LiveViewTest.ClientProxy{}"17321733     type warning found at:1734     │1735 728 │           new_view = %ClientProxy{view | rendered: rendered}1736     │                      ~1737     │1738     └─ lib/phoenix_live_view/test/client_proxy.ex:728:22: Phoenix.LiveViewTest.ClientProxy.merge_rendered/317391740     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:17411742         %Phoenix.LiveView.Socket{1743           socket1744           | assigns: %Phoenix.LiveView.Socket.AssignsNotInSocket{__assigns__: assigns}1745         }17461747     but got type:17481749         dynamic(%{..., assigns: term()})17501751     where "socket" was given the type:17521753         # type: dynamic(%{..., assigns: term()})1754         # from: lib/phoenix_live_view/renderer.ex:121:431755         %{assigns: assigns} = socket17561757     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"17581759     type warning found at:1760     │1761 122 │     socket = %Socket{socket | assigns: %Socket.AssignsNotInSocket{__assigns__: assigns}}1762     │              ~1763     │1764     └─ lib/phoenix_live_view/renderer.ex:122:14: Phoenix.LiveView.Renderer.render_assigns/117651766     warning: the following pattern will never match:17671768         template = Phoenix.LiveView.Utils.normalize_layout(template)17691770     because the right-hand side has type:17711772         none()17731774     where "template" was given the types:17751776         # type: binary()1777         # from: lib/phoenix_live_view/router.ex:299:661778         is_binary(template)17791780         # type: binary()1781         # from: lib/phoenix_live_view/router.ex1782         {:root_layout, {mod, template}}17831784     type warning found at:1785     │1786 300 │         template = Phoenix.LiveView.Utils.normalize_layout(template)1787     │                  ~1788     │1789     └─ lib/phoenix_live_view/router.ex:300:18: Phoenix.LiveView.Router.validate_live_session_opts/317901791     warning: the following pattern will never match:17921793         template = Phoenix.LiveView.Utils.normalize_layout(template)17941795     because the right-hand side has type:17961797         none()17981799     where "template" was given the types:18001801         # type: binary()1802         # from: lib/phoenix_live_view/router.ex:316:611803         is_binary(template)18041805         # type: binary()1806         # from: lib/phoenix_live_view/router.ex1807         {:layout, {mod, template}}18081809     type warning found at:1810     │1811 317 │         template = Phoenix.LiveView.Utils.normalize_layout(template)1812     │                  ~1813     │1814     └─ lib/phoenix_live_view/router.ex:317:18: Phoenix.LiveView.Router.validate_live_session_opts/318151816     warning: the following clause is redundant:18171818         def to_iodata(%_{} = struct)18191820     it has type:18211822         dynamic(%Phoenix.LiveView.Rendered{})18231824     previous clauses have already matched on the following types:18251826         %Phoenix.LiveView.Rendered{}18271828     │1829 152 │     def to_iodata(%_{} = struct) do1830     │         ~1831     │1832     └─ lib/phoenix_live_view/engine.ex:152:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/118331834     warning: the 1st pattern in clause will never match:18351836         nil18371838     because it is expected to receive type:18391840         dynamic(%Phoenix.LiveView.Rendered{})18411842     hint: defimpl for Phoenix.LiveView.Rendered requires its callbacks to match exclusively on %Phoenix.LiveView.Rendered{}18431844     type warning found at:1845     │1846 156 │     def to_iodata(nil) do1847     │     ~~~~~~~~~~~~~~~~~~~~~1848     │1849     └─ lib/phoenix_live_view/engine.ex:156: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/118501851     warning: the following clause is redundant:18521853         def to_iodata(other)18541855     it has type:18561857         dynamic(%Phoenix.LiveView.Rendered{})18581859     previous clauses have already matched on the following types:18601861         %Phoenix.LiveView.Rendered{}18621863     │1864 160 │     def to_iodata(other) do1865     │         ~1866     │1867     └─ lib/phoenix_live_view/engine.ex:160:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/118681869     warning: this clause of defp class_names/1 is never used (or it will always fail/warn when invoked)1870     │1871 903 │   defp class_names(nil), do: []1872     │        ~1873     │1874     └─ lib/phoenix_live_view/js.ex:903:8: Phoenix.LiveView.JS.class_names/118751876Generated phoenix_live_view app1877warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1878  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21879  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11880  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51881  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21882  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41883  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/218841885==> heroicons1886Compiling 3 files (.ex)1887Generated heroicons app1888==> paleta1889Compiling 67 files (.ex)1890    error: undefined function live_component/2 (expected Paleta.Components.AppHeader to define such a function or for it to be imported, but none are available)1891    │1892 56 │             <%= live_component(Paleta.Components.Live.GlobalSearch,1893    │                 ^^^^^^^^^^^^^^1894    │1895    └─ lib/components/app_header.ex:56:17: Paleta.Components.AppHeader."app_header (overridable 1)"/1189618971898== Compilation error in file lib/components/app_header.ex ==1899** (CompileError) lib/components/app_header.ex: cannot compile module Paleta.Components.AppHeader (errors have been logged)19001901could not compile dependency :paleta, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile paleta --force", update it with "mix deps.update paleta" or clean it with "mix deps.clean paleta"