flowy

Build log

nerves_system_rpi0

flowy 0.1.6 · fail · run flowy-0.1.6-1791185200071
2217 of 2217 lines
1Resolving Hex dependencies...2Resolution completed in 0.561s3Unchanged:4  castore 1.0.215  circular_buffer 1.1.06  combine 0.10.07  cowboy 2.19.08  cowboy_telemetry 0.4.09  cowlib 2.20.0 VULNERABLE!10    EEF-CVE-2026-43966 (MEDIUM)11    aka: CVE-2026-43966, GHSA-w4f7-4cxr-rv3c12    HTTP Response Splitting via Non-VCHAR Bytes in cow_http_struct_hd:escape_string/213    https://osv.dev/vulnerability/EEF-CVE-2026-439661415    EEF-CVE-2026-43969 (LOW)16    aka: CVE-2026-43969, GHSA-g2wm-735q-3f5617    Cookie Request Header Injection via Unvalidated Encoder in cow_cookie:cookie/118    https://osv.dev/vulnerability/EEF-CVE-2026-4396919  db_connection 2.10.220  decimal 3.1.121  earmark 1.4.49 RETIRED! VULNERABLE!22    (deprecated) Earmark is no longer maintained. Migrate to a replacement, for example MDEx (https://hex.pm/packages/mdex).2324    EEF-CVE-2026-48591 (MEDIUM)25    aka: CVE-2026-48591, GHSA-52mm-h59v-f3c726    Stored XSS via unescaped HTML attribute values in earmark27    https://osv.dev/vulnerability/EEF-CVE-2026-4859128  ecto 3.14.229  ecto_sql 3.14.030  elixir_make 0.10.031  esbuild 0.10.032  expo 1.1.133  finch 0.24.034  flowy 0.1.635  gettext 0.26.236  heroicons 0.5.637  hpax 1.1.038  inflex 2.1.039  interactive_cmd 0.1.440  jason 1.4.541  joken 2.7.042  jose 1.11.1243  makeup 1.2.344  makeup_elixir 0.16.245  mime 2.0.746  mint 1.11.047  nerves 2.0.0-pre.248  nerves_discovery 0.1.549  nerves_logging 0.2.450  nerves_runtime 0.13.1351  nerves_system_bbb 2.30.252  nerves_system_br 1.34.453  nerves_system_mangopi_mq_pro 0.17.254  nerves_system_qemu_aarch64 0.4.255  nerves_system_rpi0 2.1.256  nerves_system_rpi4 2.1.257  nerves_system_rpi5 2.1.258  nerves_system_trellis 0.5.059  nerves_system_x86_64 1.34.260  nerves_toolchain_aarch64_nerves_linux_gnu 15.3.161  nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.162  nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.163  nerves_toolchain_riscv64_nerves_linux_gnu 15.3.164  nerves_toolchain_x86_64_nerves_linux_musl 15.3.165  nerves_uevent 0.1.766  nimble_options 1.1.167  nimble_parsec 1.4.268  nimble_pool 1.1.069  oauth2 2.1.170  octo_fetch 0.5.071  paleta 0.1.072  phoenix 1.7.2473  phoenix_html 3.3.474  phoenix_live_view 0.20.17 VULNERABLE!75    EEF-CVE-2026-64941 (LOW)76    aka: CVE-2026-64941, GHSA-36m4-rm57-3prf77    Open redirect in Phoenix.LiveView.validate_local_url!/2 via ASCII tab, LF and CR78    https://osv.dev/vulnerability/EEF-CVE-2026-6494179  phoenix_pubsub 2.3.080  phoenix_template 1.1.081  plug 1.20.382  plug_cowboy 2.9.083  plug_crypto 2.2.084  postgrex 0.22.485  prom_ex 1.9.086  property_table 0.3.487  ranch 2.3.088  recase 0.9.189  ring_logger 0.11.790  ssl_verify_fun 1.1.791  tablet 0.3.392  tailwind 0.5.193  telemetry 1.4.294  telemetry_metrics 0.6.295  telemetry_metrics_prometheus_core 1.2.196  telemetry_poller 1.3.097  tesla 1.21.398  timex 3.7.1399  toolshed 0.5.0100  tzdata 1.2.2101  uboot_env 1.0.2102  ueberauth 0.10.5103  ueberauth_okta 0.3.1104  websock 0.5.3105  websock_adapter 0.5.9106* Getting flowy (Hex package)107* Getting nerves (Hex package)108* Getting ring_logger (Hex package)109* Getting toolshed (Hex package)110* Getting nerves_runtime (Hex package)111* Getting nerves_system_bbb (Hex package)112* Getting nerves_system_mangopi_mq_pro (Hex package)113* Getting nerves_system_qemu_aarch64 (Hex package)114* Getting nerves_system_rpi0 (Hex package)115* Getting nerves_system_rpi4 (Hex package)116* Getting nerves_system_rpi5 (Hex package)117* Getting nerves_system_trellis (Hex package)118* Getting nerves_system_x86_64 (Hex package)119* Getting nerves_system_br (Hex package)120* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)121* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)122* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)123* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)124* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)125* Getting nerves_logging (Hex package)126* Getting nerves_uevent (Hex package)127* Getting uboot_env (Hex package)128* Getting elixir_make (Hex package)129* Getting property_table (Hex package)130* Getting circular_buffer (Hex package)131* Getting interactive_cmd (Hex package)132* Getting nerves_discovery (Hex package)133* Getting tablet (Hex package)134* Getting ecto_sql (Hex package)135* Getting finch (Hex package)136* Getting jason (Hex package)137* Getting joken (Hex package)138* Getting nimble_options (Hex package)139* Getting oauth2 (Hex package)140* Getting paleta (Hex package)141* Getting phoenix (Hex package)142* Getting phoenix_live_view (Hex package)143* Getting postgrex (Hex package)144* Getting prom_ex (Hex package)145* Getting recase (Hex package)146* Getting telemetry (Hex package)147* Getting ueberauth (Hex package)148* Getting ueberauth_okta (Hex package)149* Getting plug (Hex package)150* Getting mime (Hex package)151* Getting plug_crypto (Hex package)152* Getting octo_fetch (Hex package)153* Getting plug_cowboy (Hex package)154* Getting telemetry_metrics (Hex package)155* Getting telemetry_metrics_prometheus_core (Hex package)156* Getting telemetry_poller (Hex package)157* Getting cowboy (Hex package)158* Getting cowboy_telemetry (Hex package)159* Getting cowlib (Hex package)160* Getting ranch (Hex package)161* Getting castore (Hex package)162* Getting ssl_verify_fun (Hex package)163* Getting db_connection (Hex package)164* Getting decimal (Hex package)165* Getting phoenix_html (Hex package)166* Getting phoenix_template (Hex package)167* Getting phoenix_pubsub (Hex package)168* Getting websock_adapter (Hex package)169* Getting websock (Hex package)170* Getting earmark (Hex package)171* Getting esbuild (Hex package)172* Getting heroicons (Hex package)173* Getting inflex (Hex package)174* Getting makeup (Hex package)175* Getting makeup_elixir (Hex package)176* Getting tailwind (Hex package)177* Getting timex (Hex package)178* Getting combine (Hex package)179* Getting gettext (Hex package)180* Getting tzdata (Hex package)181* Getting expo (Hex package)182* Getting nimble_parsec (Hex package)183* Getting tesla (Hex package)184* Getting jose (Hex package)185* Getting mint (Hex package)186* Getting nimble_pool (Hex package)187* Getting hpax (Hex package)188* Getting ecto (Hex package)189Found retired packages, see above for details190Found packages with security advisories, see above for details191You have added/upgraded packages you could sponsor, run `mix hex.sponsor` to learn more192==> nerves_system_br193Generated nerves_system_br app194==> combine195Compiling 6 files (.ex)196    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 operator197    │198 26 │       <<bits::bitstring-size(n), rest::bitstring>> ->199    │                              ~200    │201    └─ lib/combine/parsers/binary.ex:26:30: Combine.Parsers.Binary.bits_impl/2202203    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 operator204    │205 48 │       <<bits::bitstring-size(bits_size), rest::bitstring>> ->206    │                              ~207    │208    └─ lib/combine/parsers/binary.ex:48:30: Combine.Parsers.Binary.bytes_impl/2209210    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 operator211    │212 70 │           <<int::big-unsigned-size(size), rest::bitstring>> ->213    │                                    ~214    │215    └─ lib/combine/parsers/binary.ex:70:36: Combine.Parsers.Binary.uint_impl/3216217    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 operator218    │219 77 │           <<int::little-unsigned-size(size), rest::bitstring>> ->220    │                                       ~221    │222    └─ lib/combine/parsers/binary.ex:77:39: Combine.Parsers.Binary.uint_impl/3223224     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 operator225     │226 101 │           <<int::big-signed-size(size), rest::bitstring>> ->227     │                                  ~228     │229     └─ lib/combine/parsers/binary.ex:101:34: Combine.Parsers.Binary.int_impl/3230231     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 operator232     │233 108 │           <<int::little-signed-size(size), rest::bitstring>> ->234     │                                     ~235     │236     └─ lib/combine/parsers/binary.ex:108:37: Combine.Parsers.Binary.int_impl/3237238     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 operator239     │240 128 │       <<num::float-size(size), rest::bitstring>> ->241     │                         ~242     │243     └─ lib/combine/parsers/binary.ex:128:25: Combine.Parsers.Binary.float_impl/2244245     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 operator246     │247 432 │         <<^expected::binary-size(byte_size), rest::binary>> ->248     │                                  ~249     │250     └─ lib/combine/parsers/text.ex:432:34: Combine.Parsers.Text.string_impl/2251252     warning: the following clause is redundant:253254         defp word_of_impl(%Combine.ParserState{...} = state, _pattern)255256     it has type:257258         dynamic(%Combine.ParserState{status: :ok}), dynamic()259260     previous clauses have already matched on the following types:261262         %Combine.ParserState{status: :error}, term()263         %Combine.ParserState{status: :ok}, term()264265     │266 488 │   defp word_of_impl(%ParserState{status: :ok} = state, _pattern) do267     │        ~268     │269     └─ lib/combine/parsers/text.ex:488:8: Combine.Parsers.Text.word_of_impl/2270271Generated combine app272==> mime273Compiling 1 file (.ex)274Generated mime app275==> circular_buffer276Compiling 1 file (.ex)277Generated circular_buffer app278==> nimble_options279Compiling 3 files (.ex)280Generated nimble_options app281==> plug_crypto282Compiling 5 files (.ex)283Generated plug_crypto app284==> hpax285Compiling 4 files (.ex)286Generated hpax app287==> recase288Compiling 15 files (.ex)289Generated recase app290==> jose291Compiling 113 files (.erl)292src/jose_server.erl:137:7: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.293Compile directive 'nowarn_deprecated_catch' can be used to suppress294warnings in selected modules.295%  137| 		_ = catch jose_jwa:unsecured_signing(UnsecuredSigning),296%     | 		    ^297298src/jose_server.erl:797:7: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.299Compile directive 'nowarn_deprecated_catch' can be used to suppress300warnings in selected modules.301%  797| 	case catch jose_crypto_compat:crypto_one_time(Cipher, Key, PlainText, true) of302%     | 	     ^303304src/jose_server.erl:799:9: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.305Compile directive 'nowarn_deprecated_catch' can be used to suppress306warnings in selected modules.307%  799| 			case catch jose_crypto_compat:crypto_one_time(Cipher, Key, CipherText, false) of308%     | 			     ^309310src/jose_server.erl:809:7: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.311Compile directive 'nowarn_deprecated_catch' can be used to suppress312warnings in selected modules.313%  809| 	case catch jose_crypto_compat:crypto_one_time(Cipher, Key, IV, PlainText, true) of314%     | 	     ^315316src/jose_server.erl:811:9: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.317Compile directive 'nowarn_deprecated_catch' can be used to suppress318warnings in selected modules.319%  811| 			case catch jose_crypto_compat:crypto_one_time(Cipher, Key, IV, CipherText, false) of320%     | 			     ^321322src/jose_server.erl:821:7: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.323Compile directive 'nowarn_deprecated_catch' can be used to suppress324warnings in selected modules.325%  821| 	case catch jose_crypto_compat:crypto_one_time(Cipher, Key, IV, {AAD, PlainText}, true) of326%     | 	     ^327328src/jose_server.erl:823:9: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.329Compile directive 'nowarn_deprecated_catch' can be used to suppress330warnings in selected modules.331%  823| 			case catch jose_crypto_compat:crypto_one_time(Cipher, Key, IV, {AAD, CipherText, CipherTag}, false) of332%     | 			     ^333334src/jose_server.erl:837:7: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.335Compile directive 'nowarn_deprecated_catch' can be used to suppress336warnings in selected modules.337%  837| 	case catch public_key:encrypt_public(PlainText, PublicKey, FutureOptions) of338%     | 	     ^339340src/jose_server.erl:840:9: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.341Compile directive 'nowarn_deprecated_catch' can be used to suppress342warnings in selected modules.343%  840| 			case catch public_key:decrypt_private(CipherText, PrivateKey, FutureOptions) of344%     | 			     ^345346src/jose_server.erl:842:11: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.347Compile directive 'nowarn_deprecated_catch' can be used to suppress348warnings in selected modules.349%  842| 					case catch public_key:decrypt_private(rsa_ciphertext(Algorithm), PrivateKey, FutureOptions) of350%     | 					     ^351352src/jose_server.erl:859:7: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.353Compile directive 'nowarn_deprecated_catch' can be used to suppress354warnings in selected modules.355%  859| 	case catch public_key:encrypt_public(PlainText, PublicKey, LegacyOptions) of356%     | 	     ^357358src/jose_server.erl:862:9: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.359Compile directive 'nowarn_deprecated_catch' can be used to suppress360warnings in selected modules.361%  862| 			case catch public_key:decrypt_private(CipherText, PrivateKey, LegacyOptions) of362%     | 			     ^363364src/jose_server.erl:864:11: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.365Compile directive 'nowarn_deprecated_catch' can be used to suppress366warnings in selected modules.367%  864| 					case catch public_key:decrypt_private(rsa_ciphertext(Algorithm), PrivateKey, LegacyOptions) of368%     | 					     ^369370src/jose_server.erl:882:7: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.371Compile directive 'nowarn_deprecated_catch' can be used to suppress372warnings in selected modules.373%  882| 	case catch public_key:sign(Message, DigestType, PrivateKey, Options) of374%     | 	     ^375376src/jose_server.erl:885:9: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.377Compile directive 'nowarn_deprecated_catch' can be used to suppress378warnings in selected modules.379%  885| 			case catch public_key:verify(Message, DigestType, Signature, PublicKey, Options) of380%     | 			     ^381382src/jose_server.erl:897:7: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.383Compile directive 'nowarn_deprecated_catch' can be used to suppress384warnings in selected modules.385%  897| 	case catch public_key:sign(Message, DigestType, PrivateKey) of386%     | 	     ^387388src/jose_server.erl:900:9: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.389Compile directive 'nowarn_deprecated_catch' can be used to suppress390warnings in selected modules.391%  900| 			case catch public_key:verify(Message, DigestType, Signature, PublicKey) of392%     | 			     ^393394src/jwa/jose_jwa.erl:230:7: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.395Compile directive 'nowarn_deprecated_catch' can be used to suppress396warnings in selected modules.397%  230| 	case catch block_cipher(Cipher) of398%     | 	     ^399400src/jwa/jose_jwa.erl:238:7: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.401Compile directive 'nowarn_deprecated_catch' can be used to suppress402warnings in selected modules.403%  238| 	case catch ?MAYBE_START_JOSE(ets:lookup_element(?TAB, chacha20_poly1305_module, 2)) of404%     | 	     ^405406src/jwa/jose_jwa.erl:246:7: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.407Compile directive 'nowarn_deprecated_catch' can be used to suppress408warnings in selected modules.409%  246| 	case catch rsa_crypt(Padding) of410%     | 	     ^411412src/jwa/jose_jwa.erl:254:7: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.413Compile directive 'nowarn_deprecated_catch' can be used to suppress414warnings in selected modules.415%  254| 	case catch rsa_sign(Padding) of416%     | 	     ^417418src/jwa/jose_jwa.erl:262:7: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.419Compile directive 'nowarn_deprecated_catch' can be used to suppress420warnings in selected modules.421%  262| 	case catch ?MAYBE_START_JOSE(ets:lookup_element(?TAB, xchacha20_poly1305_module, 2)) of422%     | 	     ^423424Compiling 8 files (.ex)425Generated jose app426==> nerves_compatibility_test427===> Analyzing applications...428===> Compiling ranch429==> ssl_verify_fun430Compiling 7 files (.erl)431Generated ssl_verify_fun app432==> tzdata433Compiling 18 files (.ex)434Generated tzdata app435==> tablet436Compiling 2 files (.ex)437Generated tablet app438==> inflex439Compiling 6 files (.ex)440Generated inflex app441==> elixir_make442Compiling 8 files (.ex)443Generated elixir_make app444==> nerves_logging445 CC kmsg_tailer.o446 LD kmsg_tailer447Compiling 5 files (.ex)448Generated nerves_logging app449==> castore450Compiling 1 file (.ex)451Generated castore app452==> octo_fetch453Compiling 3 files (.ex)454Generated octo_fetch app455==> mint456Compiling 1 file (.erl)457Compiling 21 files (.ex)458Generated mint app459==> earmark460Compiling 2 files (.xrl)461Compiling 1 file (.yrl)462Compiling 3 files (.erl)463Compiling 61 files (.ex)464    warning: unused require Logger465    │466  3 │   require Logger467    │   ~468    │469    └─ lib/earmark_parser/line_scanner.ex:3:3470471     warning: this clause of defp _maybe_remove_paras/2 is never used (or it will always fail/warn when invoked)472     │473 616 │   defp _maybe_remove_paras(ast, %Options{inner_html: true}) do474     │        ~475     │476     └─ lib/earmark/transform.ex:616:8: Earmark.Transform._maybe_remove_paras/2477478Generated earmark app479==> nerves_compatibility_test480===> Analyzing applications...481===> Compiling cowlib482==> nerves_discovery483Compiling 5 files (.ex)484Generated nerves_discovery app485==> ring_logger486Compiling 7 files (.ex)487Generated ring_logger app488==> decimal489Compiling 4 files (.ex)490Generated decimal app491==> jason492Compiling 10 files (.ex)493Generated jason app494==> esbuild495Compiling 4 files (.ex)496Generated esbuild app497==> interactive_cmd498Compiling 1 file (.ex)499Generated interactive_cmd app500==> nerves501Compiling 65 files (.ex)502    warning: redefining module Mix.Tasks.Nerves.Init (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Mix.Tasks.Nerves.Init.beam)503    │504  6 │ defmodule Mix.Tasks.Nerves.Init do505    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~506    │507    └─ lib/mix/tasks/nerves.init.ex:6: Mix.Tasks.Nerves.Init (module)508509    warning: redefining module Nerves (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.beam)510    │511  6 │ defmodule Nerves do512    │ ~~~~~~~~~~~~~~~~~~~513    │514    └─ lib/nerves.ex:6: Nerves (module)515516    warning: redefining module Nerves.ArtifactResolver (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.ArtifactResolver.beam)517    │518  5 │ defmodule Nerves.ArtifactResolver do519    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~520    │521    └─ lib/nerves/artifact_resolver.ex:5: Nerves.ArtifactResolver (module)522523    warning: redefining module Nerves.BuildAction.AppModes (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.BuildAction.AppModes.beam)524    │525  6 │ defmodule Nerves.BuildAction.AppModes do526    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~527    │528    └─ lib/nerves/build_action/app_modes.ex:6: Nerves.BuildAction.AppModes (module)529530    warning: redefining module Nerves.BuildAction.CheckExecutables (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.BuildAction.CheckExecutables.beam)531    │532  5 │ defmodule Nerves.BuildAction.CheckExecutables do533    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~534    │535    └─ lib/nerves/build_action/check_executables.ex:5: Nerves.BuildAction.CheckExecutables (module)536537    warning: redefining module Nerves.BuildAction.Erlinit (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.BuildAction.Erlinit.beam)538    │539  8 │ defmodule Nerves.BuildAction.Erlinit do540    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~541    │542    └─ lib/nerves/build_action/erlinit.ex:8: Nerves.BuildAction.Erlinit (module)543544    warning: redefining module Nerves.BuildAction.Firmware (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.BuildAction.Firmware.beam)545    │546  5 │ defmodule Nerves.BuildAction.Firmware do547    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~548    │549    └─ lib/nerves/build_action/firmware.ex:5: Nerves.BuildAction.Firmware (module)550551    warning: redefining module Nerves.BuildAction.IExStartupCheck (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.BuildAction.IExStartupCheck.beam)552    │553  7 │ defmodule Nerves.BuildAction.IExStartupCheck do554    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~555    │556    └─ lib/nerves/build_action/iex_startup_check.ex:7: Nerves.BuildAction.IExStartupCheck (module)557558    warning: redefining module Nerves.BuildAction.NervesV1System (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1System.beam)559    │560  5 │ defmodule Nerves.BuildAction.NervesV1System do561    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~562    │563    └─ lib/nerves/build_action/nerves_v1_system.ex:5: Nerves.BuildAction.NervesV1System (module)564565    warning: redefining module Nerves.BuildAction.NervesV1Toolchain (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1Toolchain.beam)566    │567  5 │ defmodule Nerves.BuildAction.NervesV1Toolchain do568    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~569    │570    └─ lib/nerves/build_action/nerves_v1_toolchain.ex:5: Nerves.BuildAction.NervesV1Toolchain (module)571572    warning: redefining module Nerves.BuildAction.Rootfs (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.BuildAction.Rootfs.beam)573    │574  5 │ defmodule Nerves.BuildAction.Rootfs do575    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~576    │577    └─ lib/nerves/build_action/rootfs.ex:5: Nerves.BuildAction.Rootfs (module)578579    warning: redefining module Nerves.BuildAction.SortApps (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.BuildAction.SortApps.beam)580    │581  6 │ defmodule Nerves.BuildAction.SortApps do582    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~583    │584    └─ lib/nerves/build_action/sort_apps.ex:6: Nerves.BuildAction.SortApps (module)585586    warning: redefining module Nerves.BuildAction.StripAll (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.BuildAction.StripAll.beam)587    │588  5 │ defmodule Nerves.BuildAction.StripAll do589    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~590    │591    └─ lib/nerves/build_action/strip_all.ex:5: Nerves.BuildAction.StripAll (module)592593    warning: redefining module Nerves.BuildAction.Trimmer (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.BuildAction.Trimmer.beam)594    │595  5 │ defmodule Nerves.BuildAction.Trimmer do596    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~597    │598    └─ lib/nerves/build_action/trimmer.ex:5: Nerves.BuildAction.Trimmer (module)599600    warning: redefining module Nerves.BuildPlan (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.BuildPlan.beam)601    │602  5 │ defmodule Nerves.BuildPlan do603    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~604    │605    └─ lib/nerves/build_plan.ex:5: Nerves.BuildPlan (module)606607    warning: redefining module Nerves.BuildPlan.Checks (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.BuildPlan.Checks.beam)608    │609  5 │ defmodule Nerves.BuildPlan.Checks do610    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~611    │612    └─ lib/nerves/build_plan/checks.ex:5: Nerves.BuildPlan.Checks (module)613614    warning: redefining module Nerves.Container (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.Container.beam)615    │616  6 │ defmodule Nerves.Container do617    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~618    │619    └─ lib/nerves/container.ex:6: Nerves.Container (module)620621    warning: redefining module Nerves.Fingerprint (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.Fingerprint.beam)622    │623  5 │ defmodule Nerves.Fingerprint do624    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~625    │626    └─ lib/nerves/fingerprint.ex:5: Nerves.Fingerprint (module)627628    warning: redefining module Nerves.MixPackage (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.MixPackage.beam)629    │630  5 │ defmodule Nerves.MixPackage do631    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~632    │633    └─ lib/nerves/mix_package.ex:5: Nerves.MixPackage (module)634635    warning: redefining module Nerves.Paths (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.Paths.beam)636    │637  5 │ defmodule Nerves.Paths do638    │ ~~~~~~~~~~~~~~~~~~~~~~~~~639    │640    └─ lib/nerves/paths.ex:5: Nerves.Paths (module)641642    warning: redefining module Nerves.TargetTuple (current version loaded from /work/proj/_build/rpi0/lib/nerves/ebin/Elixir.Nerves.TargetTuple.beam)643    │644  5 │ defmodule Nerves.TargetTuple do645    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~646    │647    └─ lib/nerves/target_tuple.ex:5: Nerves.TargetTuple (module)648649Generated nerves app650==> nerves_toolchain_armv6_nerves_linux_gnueabihf651Compiling 1 file (.ex)652Generated nerves_toolchain_armv6_nerves_linux_gnueabihf app653==> nerves_system_rpi0654Generated nerves_system_rpi0 app655==> nimble_parsec656Compiling 4 files (.ex)657Generated nimble_parsec app658==> makeup659Compiling 15 files (.ex)660Generated makeup app661==> makeup_elixir662Compiling 6 files (.ex)663Compiling lib/makeup/lexers/elixir_lexer/variables.ex (it's taking more than 10s)664Compiling lib/makeup/lexers/elixir_lexer.ex (it's taking more than 10s)665Generated makeup_elixir app666==> nerves_compatibility_test667===> Analyzing applications...668===> Compiling telemetry669==> telemetry_metrics670Compiling 7 files (.ex)671     warning: unused require Logger672     │673 391 │   require Logger674     │   ~675     │676     └─ lib/telemetry_metrics.ex:391:3677678Generated telemetry_metrics app679==> telemetry_metrics_prometheus_core680Compiling 9 files (.ex)681     warning: unused require Logger682     │683 148 │   require Logger684     │   ~685     │686     └─ lib/core.ex:148:3687688warning: first..last inside match is deprecated, you must always match on the step: first..last//var or first..last//_ if you want to ignore it689  lib/core/registry.ex:87: TelemetryMetricsPrometheus.Core.Registry.validate_distribution_buckets!/1690691Generated telemetry_metrics_prometheus_core app692==> nerves_compatibility_test693===> Analyzing applications...694===> Compiling telemetry_poller695==> db_connection696Compiling 18 files (.ex)697Generated db_connection app698==> ecto699Compiling 56 files (.ex)700Generated ecto app701==> nerves_compatibility_test702===> Analyzing applications...703===> Compiling cowboy704==> expo705Compiling 2 files (.erl)706Compiling 22 files (.ex)707Generated expo app708==> gettext709Compiling 18 files (.ex)710     warning: unused require Gettext.Macros711     │712 594 │   require Gettext.Macros713     │   ~714     │715     └─ lib/gettext.ex:594:3716717     warning: Kernel.ParallelCompiler.async/1 is deprecated. Use `pmap/2` instead718     │719 426 │               Kernel.ParallelCompiler.async(fn ->720     │                                       ~721     │722     └─ lib/gettext/compiler.ex:426:39: Gettext.Compiler.compile_po_files/3723724     warning: the following clause is redundant:725726         defp ensure_empty_msgstr!(%Expo.Message.Plural{} = message)727728     it has type:729730         dynamic(%Expo.Message.Plural{})731732     previous clauses have already matched on the following types:733734         %Expo.Message.Singular{}735         %Expo.Message.Plural{}736737     │738 391 │   defp ensure_empty_msgstr!(%Message.Plural{} = message) do739     │        ~740     │741     └─ lib/gettext/extractor.ex:391:8: Gettext.Extractor.ensure_empty_msgstr!/1742743Generated gettext app744==> phoenix_pubsub745Compiling 12 files (.ex)746Generated phoenix_pubsub app747==> plug748Compiling 1 file (.erl)749Compiling 42 files (.ex)750Generated plug app751==> ueberauth752Compiling 9 files (.ex)753Generated ueberauth app754==> phoenix_html755Compiling 9 files (.ex)756    warning: comparison between distinct types found:757758        id == nil759760    given types:761762        dynamic(not false and not nil and not binary()) == nil763764    where "id" was given the types:765766        # type: dynamic(not false and not nil)767        # from: lib/phoenix_html/form_data.ex:92:8768        id = Keyword.get(opts, :id) || name769770        # type: dynamic(not false and not nil and not binary())771        # from: lib/phoenix_html/form_data.ex:94:12772        is_binary(id)773774    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 false775776    type warning found at:777    │778 94 │     unless is_binary(id) or is_nil(id) do779    │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~780    │781    └─ lib/phoenix_html/form_data.ex:94: Phoenix.HTML.FormData.Atom.to_form/2782783    warning: the 1st pattern in clause will never match:784785        60786787    because it is expected to receive type:788789        dynamic(empty_list() or non_empty_list(term(), term()))790791    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())792793    type warning found at:794    │795 56 │   def to_iodata(?<), do: "&lt;"796    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~797    │798    └─ lib/phoenix_html/safe.ex:56: Phoenix.HTML.Safe.List.to_iodata/1799800    warning: the 1st pattern in clause will never match:801802        62803804    because it is expected to receive type:805806        dynamic(empty_list() or non_empty_list(term(), term()))807808    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())809810    type warning found at:811    │812 57 │   def to_iodata(?>), do: "&gt;"813    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~814    │815    └─ lib/phoenix_html/safe.ex:57: Phoenix.HTML.Safe.List.to_iodata/1816817    warning: the 1st pattern in clause will never match:818819        38820821    because it is expected to receive type:822823        dynamic(empty_list() or non_empty_list(term(), term()))824825    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())826827    type warning found at:828    │829 58 │   def to_iodata(?&), do: "&amp;"830    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~831    │832    └─ lib/phoenix_html/safe.ex:58: Phoenix.HTML.Safe.List.to_iodata/1833834    warning: the 1st pattern in clause will never match:835836        34837838    because it is expected to receive type:839840        dynamic(empty_list() or non_empty_list(term(), term()))841842    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())843844    type warning found at:845    │846 59 │   def to_iodata(?"), do: "&quot;"847    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~848    │849    └─ lib/phoenix_html/safe.ex:59: Phoenix.HTML.Safe.List.to_iodata/1850851    warning: the 1st pattern in clause will never match:852853        39854855    because it is expected to receive type:856857        dynamic(empty_list() or non_empty_list(term(), term()))858859    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())860861    type warning found at:862    │863 60 │   def to_iodata(?'), do: "&#39;"864    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~865    │866    └─ lib/phoenix_html/safe.ex:60: Phoenix.HTML.Safe.List.to_iodata/1867868    warning: the 1st pattern in clause will never match:869870        {:safe, data}871872    because it is expected to receive type:873874        dynamic(empty_list() or non_empty_list(term(), term()))875876    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())877878    type warning found at:879    │880 76 │   def to_iodata({:safe, data}) do881    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~882    │883    └─ lib/phoenix_html/safe.ex:76: Phoenix.HTML.Safe.List.to_iodata/1884885    warning: the following clause is redundant:886887        def to_iodata(other)888889    it has type:890891        dynamic(empty_list() or non_empty_list(term(), term()))892893    previous clauses have already matched on the following types:894895        non_empty_list(term(), term())896        empty_list()897898    │899 80 │   def to_iodata(other) do900    │       ~901    │902    └─ lib/phoenix_html/safe.ex:80:7: Phoenix.HTML.Safe.List.to_iodata/1903904    warning: the 1st pattern in clause will never match:905906        h907908    because it is expected to receive type:909910        dynamic(empty_list() or non_empty_list(term(), term()))911912    where "h" was given the type:913914        # type: integer()915        # from: lib/phoenix_html/safe.ex:62:25916        is_integer(h)917918    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())919920    type warning found at:921    │922 62 │   def to_iodata(h) when is_integer(h) and h <= 255 do923    │                 ~924    │925    └─ lib/phoenix_html/safe.ex:62:17: Phoenix.HTML.Safe.List.to_iodata/1926927    warning: the 1st pattern in clause will never match:928929        h930931    because it is expected to receive type:932933        dynamic(empty_list() or non_empty_list(term(), term()))934935    where "h" was given the type:936937        # type: integer()938        # from: lib/phoenix_html/safe.ex:66:25939        is_integer(h)940941    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())942943    type warning found at:944    │945 66 │   def to_iodata(h) when is_integer(h) do946    │                 ~947    │948    └─ lib/phoenix_html/safe.ex:66:17: Phoenix.HTML.Safe.List.to_iodata/1949950    warning: the 1st pattern in clause will never match:951952        h953954    because it is expected to receive type:955956        dynamic(empty_list() or non_empty_list(term(), term()))957958    where "h" was given the type:959960        # type: binary()961        # from: lib/phoenix_html/safe.ex:72:25962        is_binary(h)963964    hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())965966    type warning found at:967    │968 72 │   def to_iodata(h) when is_binary(h) do969    │                 ~970    │971    └─ lib/phoenix_html/safe.ex:72:17: Phoenix.HTML.Safe.List.to_iodata/1972973Generated phoenix_html app974==> phoenix_template975Compiling 4 files (.ex)976Generated phoenix_template app977warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"978  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2979  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1980  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5981  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2982  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4983  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2984985==> postgrex986Compiling 70 files (.ex)987Generated postgrex app988==> ecto_sql989Compiling 25 files (.ex)990Generated ecto_sql app991==> joken992Compiling 8 files (.ex)993Generated joken app994==> uboot_env995Compiling 5 files (.ex)996Generated uboot_env app997==> timex998Compiling 62 files (.ex)999    warning: default arguments in protocol definitions is deprecated1000    │1001 84 │   def compare(a, b, granularity \\ :microsecond)1002    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1003    │1004    └─ lib/comparable/comparable.ex:84: Timex.Comparable (module)10051006     warning: default arguments in protocol definitions is deprecated1007     │1008 139 │   def diff(a, b, granularity \\ :microsecond)1009     │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1010     │1011     └─ lib/comparable/comparable.ex:139: Timex.Comparable (module)10121013    warning: protocols can only define functions without implementation via def/1, found: compare/2, diff/21014    │1015  1 │ defprotocol Timex.Comparable do1016    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1017    │1018    └─ lib/comparable/comparable.ex:1: Timex.Comparable (module)10191020     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 operator1021     │1022 317 │     <<abbrevs::bytes(len), rest::binary>> = data1023     │                      ~1024     │1025     └─ lib/parse/zoneinfo/parser.ex:317:22: Timex.Parse.ZoneInfo.Parser.parse_abbreviations/410261027    warning: default arguments in protocol definitions is deprecated1028    │1029 48 │   def to_datetime(datetime, timezone \\ :utc)1030    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1031    │1032    └─ lib/protocol.ex:48: Timex.Protocol (module)10331034    warning: protocols can only define functions without implementation via def/1, found: to_datetime/11035    │1036  1 │ defprotocol Timex.Protocol do1037    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1038    │1039    └─ lib/protocol.ex:1: Timex.Protocol (module)10401041    warning: unused require Timex.Macros1042    │1043  5 │   require Timex.Macros1044    │   ~1045    │1046    └─ lib/comparable/tuple.ex:5:310471048    warning: unused require Timex.Macros1049    │1050  5 │   require Timex.Macros1051    │   ~1052    │1053    └─ lib/comparable/naivedatetime.ex:5:310541055    warning: unused require Bitwise1056    │1057  5 │   require Bitwise1058    │   ~1059    │1060    └─ lib/calendar/julian.ex:5:310611062Compiling lib/l10n/gettext.ex (it's taking more than 10s)1063     warning: the following clause will never match:10641065         {ty, a, b} when ty === :gap or ty === :ambiguous ->10661067     it is expected to match on type:10681069         dynamic({:error, term()} and not {:ok, %{..., time_zone: term()}})10701071     where "ty" was given the type:10721073         # type: :ambiguous or :gap1074         # from: lib/timezone/timezone.ex:5481075         ty in [:gap, :ambiguous]10761077     type warning found at:1078     │1079 548 │       {ty, a, b} when ty in [:gap, :ambiguous] ->1080     │       ~1081     │1082     └─ lib/timezone/timezone.ex:548:7: Timex.Timezone.convert/210831084     warning: a struct for Timex.PosixTimezone is expected on struct update:10851086         %Timex.PosixTimezone{rule | std_abbr: abbr}10871088     but got type:10891090         dynamic()10911092     where "rule" was given the type:10931094         # type: dynamic()1095         # from: lib/parse/posix/parser.ex:119:331096         rule10971098     when defining the variable "rule", you must also pattern match on "%Timex.PosixTimezone{}"10991100     type warning found at:1101     │1102 121 │       parse_tz(:std_offset, rest, %TZ{rule | std_abbr: abbr})1103     │                                   ~1104     │1105     └─ lib/parse/posix/parser.ex:121:35: Timex.Parse.Timezones.Posix.parse_tz/311061107     warning: a struct for Timex.PosixTimezone is expected on struct update:11081109         %Timex.PosixTimezone{rule | std_offset: offset}11101111     but got type:11121113         dynamic()11141115     where "rule" was given the type:11161117         # type: dynamic()1118         # from: lib/parse/posix/parser.ex:125:351119         rule11201121     when defining the variable "rule", you must also pattern match on "%Timex.PosixTimezone{}"11221123     type warning found at:1124     │1125 127 │       parse_tz(:dst_abbr, rest, %TZ{rule | std_offset: offset})1126     │                                 ~1127     │1128     └─ lib/parse/posix/parser.ex:127:33: Timex.Parse.Timezones.Posix.parse_tz/311291130     warning: a struct for Timex.PosixTimezone is expected on struct update:11311132         %Timex.PosixTimezone{rule | dst_abbr: abbr}11331134     but got type:11351136         dynamic()11371138     where "rule" was given the type:11391140         # type: dynamic()1141         # from: lib/parse/posix/parser.ex:141:331142         rule11431144     when defining the variable "rule", you must also pattern match on "%Timex.PosixTimezone{}"11451146     type warning found at:1147     │1148 143 │          rule = %TZ{rule | dst_abbr: abbr} do1149     │                 ~1150     │1151     └─ lib/parse/posix/parser.ex:143:17: Timex.Parse.Timezones.Posix.parse_tz/311521153     warning: a struct for Timex.PosixTimezone is expected on struct update:11541155         %Timex.PosixTimezone{rule | dst_offset: offset}11561157     but got type:11581159         dynamic()11601161     where "rule" was given the type:11621163         # type: dynamic()1164         # from: lib/parse/posix/parser.ex:160:351165         rule11661167     when defining the variable "rule", you must also pattern match on "%Timex.PosixTimezone{}"11681169     type warning found at:1170     │1171 162 │          rule = %TZ{rule | dst_offset: offset} do1172     │                 ~1173     │1174     └─ lib/parse/posix/parser.ex:162:17: Timex.Parse.Timezones.Posix.parse_tz/311751176     warning: a struct for Timex.PosixTimezone is expected on struct update:11771178         %Timex.PosixTimezone{rule | dst_start: dst_start, dst_end: dst_end}11791180     but got type:11811182         dynamic()11831184     where "rule" was given the type:11851186         # type: dynamic()1187         # from: lib/parse/posix/parser.ex:185:361188         rule11891190     when defining the variable "rule", you must also pattern match on "%Timex.PosixTimezone{}"11911192     type warning found at:1193     │1194 190 │           {:ok, %TZ{rule | dst_start: dst_start, dst_end: dst_end}, rest}1195     │                 ~1196     │1197     └─ lib/parse/posix/parser.ex:190:17: Timex.Parse.Timezones.Posix.parse_tz/311981199     warning: the following clause will never match:12001201         :error ->12021203     it is expected to match on type:12041205         dynamic({:error, :invalid_number, binary()})12061207     type warning found at:1208     │1209 264 │       :error ->1210     │       ~~~~~~~~~1211     │1212     └─ lib/parse/posix/parser.ex:264: Timex.Parse.Timezones.Posix.parse_month_week_day/312131214    warning: the following pattern will never match:12151216        {y, m, d} <- to_erl_datetime(date)12171218    because the right-hand side has type:12191220        dynamic(1221          {:error, :invalid_date} or1222            {:ok, {{integer(), integer(), integer()}, {integer(), integer(), integer()}}}1223        )12241225    where "date" was given the type:12261227        # type: dynamic({...})1228        # from: lib/datetime/erlang.ex:7:171229        date12301231    type warning found at:1232    │1233  8 │     with {y, m, d} <- to_erl_datetime(date),1234    │          ~1235    │1236    └─ lib/datetime/erlang.ex:8:10: Timex.Protocol.Tuple.to_julian/112371238     warning: the following clause is redundant:12391240         def shift(_, _)12411242     it has type:12431244         dynamic(%Date{}), dynamic()12451246     previous clauses have already matched on the following types:12471248         %Date{}, term()12491250     │1251 227 │   def shift(_, _), do: {:error, :badarg}1252     │       ~1253     │1254     └─ lib/date/date.ex:227:7: Timex.Protocol.Date.shift/212551256     warning: a struct for Timex.Parse.ZoneInfo.Parser.Zone is expected on struct update:12571258         %Timex.Parse.ZoneInfo.Parser.Zone{zone | transitions: transitions, leaps: leaps}12591260     but got type:12611262         dynamic(%{..., leaps: term(), transitions: term()})12631264     where "zone" was given the types:12651266         # type: dynamic(%{..., rule: term()} or %{..., transitions: term()})1267         # from: lib/parse/zoneinfo/parser.ex:156:281268         {:ok, zone, rest} <- parse_content(1, data, %Timex.Parse.ZoneInfo.Parser.Zone{..., version: 1})12691270         # type: dynamic(%{..., transitions: term()})1271         # from: lib/parse/zoneinfo/parser.ex:157:261272         Enum.sort_by(zone.transitions, fn tx -> tx.starts_at end)12731274         # type: dynamic(%{..., leaps: term(), transitions: term()})1275         # from: lib/parse/zoneinfo/parser.ex:158:201276         Enum.sort_by(zone.leaps, fn leap -> leap.epoch end)12771278     when defining the variable "zone", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Zone{}"12791280     type warning found at:1281     │1282 159 │       {:ok, %Zone{zone | transitions: transitions, leaps: leaps}, rest}1283     │             ~1284     │1285     └─ lib/parse/zoneinfo/parser.ex:159:13: Timex.Parse.ZoneInfo.Parser.parse_versioned_content/212861287     warning: a struct for Timex.Parse.ZoneInfo.Parser.Zone is expected on struct update:12881289         %Timex.Parse.ZoneInfo.Parser.Zone{zone | transitions: times}12901291     but got type:12921293         dynamic()12941295     where "zone" was given the type:12961297         # type: dynamic()1298         # from: lib/parse/zoneinfo/parser.ex:270:921299         zone13001301     when defining the variable "zone", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Zone{}"13021303     type warning found at:1304     │1305 272 │     parse_transition_info(version, rest, header, %Zone{zone | transitions: times})1306     │                                                  ~1307     │1308     └─ lib/parse/zoneinfo/parser.ex:272:50: Timex.Parse.ZoneInfo.Parser.parse_transition_times/413091310     warning: a struct for Timex.Parse.ZoneInfo.Parser.Zone is expected on struct update:13111312         %Timex.Parse.ZoneInfo.Parser.Zone{zone | leaps: leaps}13131314     but got type:13151316         dynamic()13171318     where "zone" was given the type:13191320         # type: dynamic()1321         # from: lib/parse/zoneinfo/parser.ex:330:791322         zone13231324     when defining the variable "zone", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Zone{}"13251326     type warning found at:1327     │1328 344 │     parse_flags(version, rest, header, %Zone{zone | leaps: leaps})1329     │                                        ~1330     │1331     └─ lib/parse/zoneinfo/parser.ex:344:40: Timex.Parse.ZoneInfo.Parser.parse_leap_seconds/413321333     warning: a struct for Timex.Parse.ZoneInfo.Parser.Zone is expected on struct update:13341335         %Timex.Parse.ZoneInfo.Parser.Zone{zone | transitions: transitions}13361337     but got type:13381339         dynamic(%{..., transitions: term()})13401341     where "zone" was given the type:13421343         # type: dynamic(%{..., transitions: term()})1344         # from: lib/parse/zoneinfo/parser.ex:354:151345         Enum.with_index(zone.transitions)13461347     when defining the variable "zone", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Zone{}"13481349     type warning found at:1350     │1351 362 │       parse_posixtz_string(version, rest, %Zone{zone | transitions: transitions})1352     │                                           ~1353     │1354     └─ lib/parse/zoneinfo/parser.ex:362:43: Timex.Parse.ZoneInfo.Parser.parse_flags/413551356     warning: a struct for Timex.Parse.ZoneInfo.Parser.Zone is expected on struct update:13571358         %Timex.Parse.ZoneInfo.Parser.Zone{zone | transitions: transitions}13591360     but got type:13611362         dynamic(%{..., transitions: term()})13631364     where "zone" was given the type:13651366         # type: dynamic(%{..., transitions: term()})1367         # from: lib/parse/zoneinfo/parser.ex:354:151368         Enum.with_index(zone.transitions)13691370     when defining the variable "zone", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Zone{}"13711372     type warning found at:1373     │1374 364 │       {:ok, %Zone{zone | transitions: transitions}, rest}1375     │             ~1376     │1377     └─ lib/parse/zoneinfo/parser.ex:364:13: Timex.Parse.ZoneInfo.Parser.parse_flags/413781379     warning: a struct for Timex.Parse.ZoneInfo.Parser.Zone is expected on struct update:13801381         %Timex.Parse.ZoneInfo.Parser.Zone{zone | rule: rule}13821383     but got type:13841385         dynamic()13861387     where "zone" was given the type:13881389         # type: dynamic()1390         # from: lib/parse/zoneinfo/parser.ex:369:621391         zone13921393     when defining the variable "zone", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Zone{}"13941395     type warning found at:1396     │1397 372 │       {:ok, %Zone{zone | rule: rule}, format_rest <> rest}1398     │             ~1399     │1400     └─ lib/parse/zoneinfo/parser.ex:372:13: Timex.Parse.ZoneInfo.Parser.parse_posixtz_string/314011402     warning: a struct for Timex.Parse.ZoneInfo.Parser.Rule is expected on struct update:14031404         %Timex.Parse.ZoneInfo.Parser.Rule{rule | std_abbr: abbr, dst_abbr: abbr}14051406     but got type:14071408         dynamic()14091410     where "rule" was given the type:14111412         # type: dynamic()1413         # from: lib/parse/zoneinfo/parser.ex:383:331414         rule14151416     when defining the variable "rule", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Rule{}"14171418     type warning found at:1419     │1420 385 │       parse_tz(:std_offset, rest, %Rule{rule | std_abbr: abbr, dst_abbr: abbr})1421     │                                   ~1422     │1423     └─ lib/parse/zoneinfo/parser.ex:385:35: Timex.Parse.ZoneInfo.Parser.parse_tz/314241425     warning: a struct for Timex.Parse.ZoneInfo.Parser.Rule is expected on struct update:14261427         %Timex.Parse.ZoneInfo.Parser.Rule{rule | std_offset: offset, dst_offset: offset}14281429     but got type:14301431         dynamic()14321433     where "rule" was given the type:14341435         # type: dynamic()1436         # from: lib/parse/zoneinfo/parser.ex:389:351437         rule14381439     when defining the variable "rule", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Rule{}"14401441     type warning found at:1442     │1443 391 │       parse_tz(:dst_abbr, rest, %Rule{rule | std_offset: offset, dst_offset: offset})1444     │                                 ~1445     │1446     └─ lib/parse/zoneinfo/parser.ex:391:33: Timex.Parse.ZoneInfo.Parser.parse_tz/314471448     warning: a struct for Timex.Parse.ZoneInfo.Parser.Rule is expected on struct update:14491450         %Timex.Parse.ZoneInfo.Parser.Rule{rule | dst_abbr: abbr}14511452     but got type:14531454         dynamic()14551456     where "rule" was given the type:14571458         # type: dynamic()1459         # from: lib/parse/zoneinfo/parser.ex:405:331460         rule14611462     when defining the variable "rule", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Rule{}"14631464     type warning found at:1465     │1466 407 │          rule = %Rule{rule | dst_abbr: abbr} do1467     │                 ~1468     │1469     └─ lib/parse/zoneinfo/parser.ex:407:17: Timex.Parse.ZoneInfo.Parser.parse_tz/314701471     warning: a struct for Timex.Parse.ZoneInfo.Parser.Rule is expected on struct update:14721473         %Timex.Parse.ZoneInfo.Parser.Rule{rule | dst_offset: offset}14741475     but got type:14761477         dynamic()14781479     where "rule" was given the type:14801481         # type: dynamic()1482         # from: lib/parse/zoneinfo/parser.ex:424:351483         rule14841485     when defining the variable "rule", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Rule{}"14861487     type warning found at:1488     │1489 426 │          rule = %Rule{rule | dst_offset: offset} do1490     │                 ~1491     │1492     └─ lib/parse/zoneinfo/parser.ex:426:17: Timex.Parse.ZoneInfo.Parser.parse_tz/314931494     warning: a struct for Timex.Parse.ZoneInfo.Parser.Rule is expected on struct update:14951496         %Timex.Parse.ZoneInfo.Parser.Rule{rule | start_time: start_time, end_time: end_time}14971498     but got type:14991500         dynamic()15011502     where "rule" was given the type:15031504         # type: dynamic()1505         # from: lib/parse/zoneinfo/parser.ex:449:361506         rule15071508     when defining the variable "rule", you must also pattern match on "%Timex.Parse.ZoneInfo.Parser.Rule{}"15091510     type warning found at:1511     │1512 454 │           {:ok, %Rule{rule | start_time: start_time, end_time: end_time}, rest}1513     │                 ~1514     │1515     └─ lib/parse/zoneinfo/parser.ex:454:17: Timex.Parse.ZoneInfo.Parser.parse_tz/315161517     warning: the following clause will never match:15181519         :error ->15201521     it is expected to match on type:15221523         dynamic({:error, :invalid_number, binary()})15241525     type warning found at:1526     │1527 528 │       :error ->1528     │       ~~~~~~~~~1529     │1530     └─ lib/parse/zoneinfo/parser.ex:528: Timex.Parse.ZoneInfo.Parser.parse_month_week_day/315311532Generated timex app1533==> nimble_pool1534Compiling 2 files (.ex)1535Generated nimble_pool app1536==> finch1537Compiling 23 files (.ex)1538Generated finch app1539==> tesla1540Compiling 57 files (.ex)1541Generated tesla app1542==> oauth21543Compiling 13 files (.ex)1544Generated oauth2 app1545==> ueberauth_okta1546Compiling 3 files (.ex)1547    warning: unused require Jason1548    │1549 16 │   require Jason1550    │   ~1551    │1552    └─ lib/ueberauth/strategy/okta/oauth.ex:16:315531554Generated ueberauth_okta app1555==> property_table1556Compiling 8 files (.ex)1557Generated property_table app1558==> nerves_uevent1559 CC uevent.o1560 LD uevent1561Compiling 5 files (.ex)1562Generated nerves_uevent app1563==> nerves_runtime1564Compiling 14 files (.ex)1565Generated nerves_runtime app1566==> toolshed1567Compiling 5 files (.ex)1568Generated toolshed app1569==> tailwind1570Compiling 3 files (.ex)1571Generated tailwind app1572==> nerves_compatibility_test1573===> Analyzing applications...1574===> Compiling cowboy_telemetry1575==> plug_cowboy1576Compiling 5 files (.ex)1577Generated plug_cowboy app1578==> websock1579Compiling 1 file (.ex)1580Generated websock app1581==> websock_adapter1582Compiling 4 files (.ex)1583Generated websock_adapter app1584warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1585  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21586  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11587  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51588  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21589  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41590  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/215911592==> phoenix1593Compiling 71 files (.ex)1594    warning: unused require Logger1595    │1596  9 │   require Logger1597    │   ~1598    │1599    └─ lib/phoenix/config.ex:9:316001601     warning: unused require Logger1602     │1603 281 │   require Logger1604     │   ~1605     │1606     └─ lib/phoenix/endpoint.ex:281:316071608    warning: unused require Phoenix.Endpoint1609    │1610  6 │   require Phoenix.Endpoint1611    │   ~1612    │1613    └─ lib/phoenix/controller.ex:6:316141615    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 operator1616    │1617 46 │       <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix1618    │                             ~1619    │1620    └─ lib/phoenix/naming.ex:46:29: Phoenix.Naming.unsuffix/216211622    warning: unused require Phoenix.Endpoint1623    │1624 17 │   require Phoenix.Endpoint1625    │   ~1626    │1627    └─ lib/phoenix/endpoint/render_errors.ex:17:316281629    warning: unused require Phoenix.Endpoint1630    │1631  6 │   require Phoenix.Endpoint1632    │   ~1633    │1634    └─ lib/phoenix/channel/server.ex:6:316351636     warning: unused require Phoenix.Endpoint1637     │1638 202 │   require Phoenix.Endpoint1639     │   ~1640     │1641     └─ lib/phoenix/socket.ex:202:316421643    warning: unused require Logger1644    │1645 70 │   require Logger1646    │   ~1647    │1648    └─ lib/phoenix/socket/pool_supervisor.ex:70:316491650     warning: unused require Logger1651     │1652 100 │   require Logger1653     │   ~1654     │1655     └─ lib/phoenix/token.ex:100:316561657     warning: comparison between distinct types found:16581659         merge_all != []16601661     given types:16621663         dynamic(non_empty_list({atom(), term()})) != empty_list()16641665     where "merge_all" was given the type:16661667         # type: dynamic(non_empty_list({atom(), term()}))1668         # from: lib/phoenix/router/route.ex:121:151669         merge_all = merge_params ++ merge_private ++ merge_assigns16701671     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 false16721673     type warning found at:1674     │1675 123 │     if merge_all != [] do1676     │                  ~1677     │1678     └─ lib/phoenix/router/route.ex:123:18: Phoenix.Router.Route.build_prepare/116791680    warning: a struct for Plug.Conn is expected on struct update:16811682        %Plug.Conn{conn | state: :sent}16831684    but got type:16851686        dynamic()16871688    where "conn" was given the type:16891690        # type: dynamic()1691        # from: lib/phoenix/endpoint/render_errors.ex:55:171692        conn16931694    when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"16951696    type warning found at:1697    │1698 60 │           %Plug.Conn{conn | state: :sent}1699    │           ~1700    │1701    └─ lib/phoenix/endpoint/render_errors.ex:60:11: Phoenix.Endpoint.RenderErrors.__catch__/517021703     warning: a struct for Plug.Conn is expected on struct update:17041705         %Plug.Conn{conn | query_params: %{}, params: %{}}17061707     but got type:17081709         dynamic(%{..., params: %Plug.Conn.Unfetched{}})17101711     where "conn" was given the types:17121713         # type: dynamic(%{..., params: term()})1714         # from: lib/phoenix/endpoint/render_errors.ex:133:171715         conn.params17161717         # type: dynamic(%{..., params: %Plug.Conn.Unfetched{}})1718         # from: lib/phoenix/endpoint/render_errors.ex:133:171719         conn.params17201721     when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"17221723     type warning found at:1724     │1725 134 │         %Plug.Conn.Unfetched{} -> %Plug.Conn{conn | query_params: %{}, params: %{}}1726     │                                   ~1727     │1728     └─ lib/phoenix/endpoint/render_errors.ex:134:35: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/117291730     warning: a struct for Plug.Conn is expected on struct update:17311732         %Plug.Conn{conn | query_params: %{}, params: params}17331734     but got type:17351736         dynamic(%{..., params: not %Plug.Conn.Unfetched{}})17371738     where "conn" was given the types:17391740         # type: dynamic(%{..., params: term()})1741         # from: lib/phoenix/endpoint/render_errors.ex:133:171742         conn.params17431744         # type: dynamic(%{..., params: not %Plug.Conn.Unfetched{}})1745         # from: lib/phoenix/endpoint/render_errors.ex:133:171746         conn.params17471748     when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"17491750     type warning found at:1751     │1752 135 │         params -> %Plug.Conn{conn | query_params: %{}, params: params}1753     │                   ~1754     │1755     └─ lib/phoenix/endpoint/render_errors.ex:135:19: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/117561757      warning: a struct for Plug.Conn is expected on struct update:17581759          %Plug.Conn{conn | params: params}17601761      but got type:17621763          dynamic(%{..., params: map()})17641765      where "conn" was given the type:17661767          # type: dynamic(%{..., params: map()})1768          # from: lib/phoenix/controller.ex:1327:171769          Map.get(conn.params, required_key)17701771      when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"17721773      type warning found at:1774      │1775 1334 │     %Plug.Conn{conn | params: params}1776      │     ~1777      │1778      └─ lib/phoenix/controller.ex:1334:5: Phoenix.Controller.scrub_params/217791780Generated phoenix app1781warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1782  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21783  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11784  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51785  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21786  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41787  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/217881789==> phoenix_live_view1790Compiling 39 files (.ex)1791    warning: unused require Logger1792    │1793 48 │   require Logger1794    │   ~1795    │1796    └─ lib/phoenix_live_view/socket.ex:48:317971798     warning: unused require Phoenix.ChannelTest1799     │1800 183 │   require Phoenix.ChannelTest1801     │   ~1802     │1803     └─ lib/phoenix_live_view/test/live_view_test.ex:183:318041805     warning: unused require Phoenix.ConnTest1806     │1807 182 │   require Phoenix.ConnTest1808     │   ~1809     │1810     └─ lib/phoenix_live_view/test/live_view_test.ex:182:318111812    warning: unused require Phoenix.ChannelTest1813    │1814  5 │   require Phoenix.ChannelTest1815    │   ~1816    │1817    └─ lib/phoenix_live_view/test/upload_client.ex:5:318181819    warning: unused require Logger1820    │1821  6 │   require Logger1822    │   ~1823    │1824    └─ lib/phoenix_live_view/upload_channel.ex:6:318251826     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:18271828         %Phoenix.LiveView.Socket{1829           socket1830           | assigns: Map.merge(temp_assigns, socket.assigns),1831             private:1832               Map.update(1833                 socket.private,1834                 :temporary_assigns,1835                 temp_assigns,1836                 &Map.merge(&1, temp_assigns)1837               )1838         }18391840     but got type:18411842         dynamic()18431844     where "socket" was given the type:18451846         # type: dynamic()1847         # from: lib/phoenix_live_view/utils.ex:415:281848         socket18491850     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"18511852     type warning found at:1853     │1854 422 │     %Socket{1855     │     ~1856     │1857     └─ lib/phoenix_live_view/utils.ex:422:5: Phoenix.LiveView.Utils.handle_mount_option/318581859    warning: the following clause will never match:18601861        {:error, reason} ->18621863    because it attempts to match on the result of:18641865        IO.binwrite(state.file, data)18661867    which has type:18681869        dynamic(not {:error, term()})18701871    type warning found at:1872    │1873 23 │       {:error, reason} -> {:error, reason, state}1874    │       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1875    │1876    └─ lib/phoenix_live_view/upload_tmp_file_writer.ex:23: Phoenix.LiveView.UploadTmpFileWriter.write_chunk/218771878      warning: the following clause is redundant:18791880          def update(assigns, _key, fun) when is_function(fun, 1) or is_function(fun, 2)18811882      it has type:18831884          dynamic(), dynamic(), dynamic((none() -> term()) or (none(), none() -> term()))18851886      previous clauses have already matched on the following types:18871888          %Phoenix.LiveView.Socket{}, term(), (none(), none() -> term())1889          %Phoenix.LiveView.Socket{}, term(), (none() -> term())1890          term(), term(), (none(), none() -> term())1891          term(), term(), (none() -> term())18921893      │1894 1378 │   def update(assigns, _key, fun) when is_function(fun, 1) or is_function(fun, 2) do1895      │       ~1896      │1897      └─ lib/phoenix_component.ex:1378:7: Phoenix.Component.update/318981899     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:19001901         %Phoenix.LiveView.UploadEntry{1902           entry1903           | preflighted?: entry.preflighted? || Enum.__in__(entry.ref, refs)1904         }19051906     but got type:19071908         dynamic()19091910     where "entry" was given the type:19111912         # type: dynamic()1913         # from: lib/phoenix_live_view/upload_config.ex:362:171914         entry <- conf.entries19151916     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"19171918     type warning found at:1919     │1920 363 │         %UploadEntry{entry | preflighted?: entry.preflighted? || entry.ref in refs}1921     │         ~1922     │1923     └─ lib/phoenix_live_view/upload_config.ex:363:9: Phoenix.LiveView.UploadConfig.mark_preflighted/219241925     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:19261927         %Phoenix.LiveView.UploadEntry{entry | valid?: true, uuid: generate_uuid()}19281929     but got type:19301931         dynamic()19321933     where "entry" was given the type:19341935         # type: dynamic()1936         # from: lib/phoenix_live_view/upload_config.ex:572:301937         entry19381939     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"19401941     type warning found at:1942     │1943 573 │     entry = %UploadEntry{entry | valid?: true, uuid: generate_uuid()}1944     │             ~1945     │1946     └─ lib/phoenix_live_view/upload_config.ex:573:13: Phoenix.LiveView.UploadConfig.put_valid_entry/219471948     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:19491950         %Phoenix.LiveView.UploadEntry{entry | valid?: false}19511952     but got type:19531954         dynamic()19551956     where "entry" was given the type:19571958         # type: dynamic()1959         # from: lib/phoenix_live_view/upload_config.ex:585:321960         entry19611962     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"19631964     type warning found at:1965     │1966 586 │     entry = %UploadEntry{entry | valid?: false}1967     │             ~1968     │1969     └─ lib/phoenix_live_view/upload_config.ex:586:13: Phoenix.LiveView.UploadConfig.put_invalid_entry/319701971     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:19721973         %Phoenix.LiveView.UploadEntry{entry | cancelled?: true}19741975     but got type:19761977         dynamic()19781979     where "entry" was given the type:19801981         # type: dynamic()1982         # from: lib/phoenix_live_view/upload_config.ex:669:421983         entry19841985     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"19861987     type warning found at:1988     │1989 669 │         update_entry(conf, entry.ref, fn entry -> %UploadEntry{entry | cancelled?: true} end)1990     │                                                   ~1991     │1992     └─ lib/phoenix_live_view/upload_config.ex:669:51: Phoenix.LiveView.UploadConfig.cancel_entry/219931994    warning: Logger.disable/1 is deprecated. Use Logger.put_process_level(pid, :none) instead1995    │1996 73 │     Logger.disable(self())1997    │            ~1998    │1999    └─ lib/phoenix_live_view/test/client_proxy.ex:73:12: Phoenix.LiveViewTest.ClientProxy.init/120002001     warning: a struct for Phoenix.LiveViewTest.ClientProxy is expected on struct update:20022003         %Phoenix.LiveViewTest.ClientProxy{view | rendered: rendered}20042005     but got type:20062007         dynamic(%{..., rendered: map()})20082009     where "view" was given the type:20102011         # type: dynamic(%{..., rendered: map()})2012         # from: lib/phoenix_live_view/test/client_proxy.ex:727:262013         Phoenix.LiveViewTest.DOM.merge_diff(view.rendered, diff)20142015     when defining the variable "view", you must also pattern match on "%Phoenix.LiveViewTest.ClientProxy{}"20162017     type warning found at:2018     │2019 728 │           new_view = %ClientProxy{view | rendered: rendered}2020     │                      ~2021     │2022     └─ lib/phoenix_live_view/test/client_proxy.ex:728:22: Phoenix.LiveViewTest.ClientProxy.merge_rendered/320232024     warning: the right-hand side of || (shown as ... below) will never be executed:20252026         conn.private[:live_view_connect_info] || prune_conn(conn) || ...20272028     because the left-hand side always evaluates to:20292030         dynamic(not false and not nil)20312032     where "conn" was given the types:20332034         # type: dynamic(%Plug.Conn{assigns: %{..., live_module: term()}, status: integer()})2035         # from: lib/phoenix_live_view/test/live_view_test.ex:319:722036         %Plug.Conn{status: 200, assigns: %{live_module: live_module}} = conn20372038         # type: dynamic(%Plug.Conn{2039           assigns: %{..., live_module: term()},2040           private:2041             %{..., __struct__: atom()} or nil or empty_list() or non_empty_list(term(), term()) or2042               non_struct_map(),2043           status: integer()2044         })2045         # from: lib/phoenix_live_view/test/live_view_test.ex:333:352046         conn.private[:live_view_connect_params]20472048     type warning found at:2049     │2050 334 │       connect_info: conn.private[:live_view_connect_info] || prune_conn(conn) || %{},2051     │       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2052     │2053     └─ lib/phoenix_live_view/test/live_view_test.ex:334: Phoenix.LiveViewTest.connect_from_static_token/220542055     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:20562057         %Phoenix.LiveView.Socket{2058           socket2059           | assigns: %Phoenix.LiveView.Socket.AssignsNotInSocket{__assigns__: assigns}2060         }20612062     but got type:20632064         dynamic(%{..., assigns: term()})20652066     where "socket" was given the type:20672068         # type: dynamic(%{..., assigns: term()})2069         # from: lib/phoenix_live_view/renderer.ex:121:432070         %{assigns: assigns} = socket20712072     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"20732074     type warning found at:2075     │2076 122 │     socket = %Socket{socket | assigns: %Socket.AssignsNotInSocket{__assigns__: assigns}}2077     │              ~2078     │2079     └─ lib/phoenix_live_view/renderer.ex:122:14: Phoenix.LiveView.Renderer.render_assigns/120802081     warning: the following pattern will never match:20822083         template = Phoenix.LiveView.Utils.normalize_layout(template)20842085     because the right-hand side has type:20862087         none()20882089     where "template" was given the types:20902091         # type: binary()2092         # from: lib/phoenix_live_view/router.ex:299:662093         is_binary(template)20942095         # type: binary()2096         # from: lib/phoenix_live_view/router.ex2097         {:root_layout, {mod, template}}20982099     type warning found at:2100     │2101 300 │         template = Phoenix.LiveView.Utils.normalize_layout(template)2102     │                  ~2103     │2104     └─ lib/phoenix_live_view/router.ex:300:18: Phoenix.LiveView.Router.validate_live_session_opts/321052106     warning: the following pattern will never match:21072108         template = Phoenix.LiveView.Utils.normalize_layout(template)21092110     because the right-hand side has type:21112112         none()21132114     where "template" was given the types:21152116         # type: binary()2117         # from: lib/phoenix_live_view/router.ex:316:612118         is_binary(template)21192120         # type: binary()2121         # from: lib/phoenix_live_view/router.ex2122         {:layout, {mod, template}}21232124     type warning found at:2125     │2126 317 │         template = Phoenix.LiveView.Utils.normalize_layout(template)2127     │                  ~2128     │2129     └─ lib/phoenix_live_view/router.ex:317:18: Phoenix.LiveView.Router.validate_live_session_opts/321302131     warning: the following clause is redundant:21322133         def to_iodata(%_{} = struct)21342135     it has type:21362137         dynamic(%Phoenix.LiveView.Rendered{})21382139     previous clauses have already matched on the following types:21402141         %Phoenix.LiveView.Rendered{}21422143     │2144 152 │     def to_iodata(%_{} = struct) do2145     │         ~2146     │2147     └─ lib/phoenix_live_view/engine.ex:152:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/121482149     warning: the 1st pattern in clause will never match:21502151         nil21522153     because it is expected to receive type:21542155         dynamic(%Phoenix.LiveView.Rendered{})21562157     hint: defimpl for Phoenix.LiveView.Rendered requires its callbacks to match exclusively on %Phoenix.LiveView.Rendered{}21582159     type warning found at:2160     │2161 156 │     def to_iodata(nil) do2162     │     ~~~~~~~~~~~~~~~~~~~~~2163     │2164     └─ lib/phoenix_live_view/engine.ex:156: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/121652166     warning: the following clause is redundant:21672168         def to_iodata(other)21692170     it has type:21712172         dynamic(%Phoenix.LiveView.Rendered{})21732174     previous clauses have already matched on the following types:21752176         %Phoenix.LiveView.Rendered{}21772178     │2179 160 │     def to_iodata(other) do2180     │         ~2181     │2182     └─ lib/phoenix_live_view/engine.ex:160:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/121832184     warning: this clause of defp class_names/1 is never used (or it will always fail/warn when invoked)2185     │2186 903 │   defp class_names(nil), do: []2187     │        ~2188     │2189     └─ lib/phoenix_live_view/js.ex:903:8: Phoenix.LiveView.JS.class_names/121902191Generated phoenix_live_view app2192warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"2193  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/22194  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/12195  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/52196  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/22197  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/42198  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/221992200==> heroicons2201Compiling 3 files (.ex)2202Compiling lib/heroicons.ex (it's taking more than 10s)2203Generated heroicons app2204==> paleta2205Compiling 67 files (.ex)2206    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)2207    │2208 56 │             <%= live_component(Paleta.Components.Live.GlobalSearch,2209    │                 ^^^^^^^^^^^^^^2210    │2211    └─ lib/components/app_header.ex:56:17: Paleta.Components.AppHeader."app_header (overridable 1)"/1221222132214== Compilation error in file lib/components/app_header.ex ==2215** (CompileError) lib/components/app_header.ex: cannot compile module Paleta.Components.AppHeader (errors have been logged)22162217could 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"