flowy

Build log

host

flowy 0.1.6 · fail · run flowy-0.1.6-1791185200071
776 of 776 lines
1Resolving Hex dependencies...2Resolution completed in 0.733s3Unchanged: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.9106Found retired packages, see above for details107Found packages with security advisories, see above for details108All dependencies have been fetched109==> octo_fetch110Compiling 3 files (.ex)111Generated octo_fetch app112==> telemetry_metrics_prometheus_core113Compiling 9 files (.ex)114     warning: unused require Logger115     │116 148 │   require Logger117     │   ~118     │119     └─ lib/core.ex:148:3120121warning: first..last inside match is deprecated, you must always match on the step: first..last//var or first..last//_ if you want to ignore it122  lib/core/registry.ex:87: TelemetryMetricsPrometheus.Core.Registry.validate_distribution_buckets!/1123124Generated telemetry_metrics_prometheus_core app125==> ueberauth126Compiling 9 files (.ex)127Generated ueberauth app128==> joken129Compiling 8 files (.ex)130Generated joken app131==> oauth2132Compiling 13 files (.ex)133Generated oauth2 app134==> ueberauth_okta135Compiling 3 files (.ex)136    warning: unused require Jason137    │138 16 │   require Jason139    │   ~140    │141    └─ lib/ueberauth/strategy/okta/oauth.ex:16:3142143Generated ueberauth_okta app144warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"145  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2146  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1147  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5148  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2149  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4150  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2151152==> phoenix153Compiling 71 files (.ex)154    warning: unused require Logger155    │156  9 │   require Logger157    │   ~158    │159    └─ lib/phoenix/config.ex:9:3160161     warning: unused require Logger162     │163 281 │   require Logger164     │   ~165     │166     └─ lib/phoenix/endpoint.ex:281:3167168    warning: unused require Phoenix.Endpoint169    │170  6 │   require Phoenix.Endpoint171    │   ~172    │173    └─ lib/phoenix/controller.ex:6:3174175    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 operator176    │177 46 │       <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix178    │                             ~179    │180    └─ lib/phoenix/naming.ex:46:29: Phoenix.Naming.unsuffix/2181182    warning: unused require Phoenix.Endpoint183    │184 17 │   require Phoenix.Endpoint185    │   ~186    │187    └─ lib/phoenix/endpoint/render_errors.ex:17:3188189    warning: unused require Logger190    │191 70 │   require Logger192    │   ~193    │194    └─ lib/phoenix/socket/pool_supervisor.ex:70:3195196     warning: unused require Phoenix.Endpoint197     │198 202 │   require Phoenix.Endpoint199     │   ~200     │201     └─ lib/phoenix/socket.ex:202:3202203    warning: unused require Phoenix.Endpoint204    │205  6 │   require Phoenix.Endpoint206    │   ~207    │208    └─ lib/phoenix/channel/server.ex:6:3209210     warning: unused require Logger211     │212 100 │   require Logger213     │   ~214     │215     └─ lib/phoenix/token.ex:100:3216217     warning: comparison between distinct types found:218219         merge_all != []220221     given types:222223         dynamic(non_empty_list({atom(), term()})) != empty_list()224225     where "merge_all" was given the type:226227         # type: dynamic(non_empty_list({atom(), term()}))228         # from: lib/phoenix/router/route.ex:121:15229         merge_all = merge_params ++ merge_private ++ merge_assigns230231     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 false232233     type warning found at:234     │235 123 │     if merge_all != [] do236     │                  ~237     │238     └─ lib/phoenix/router/route.ex:123:18: Phoenix.Router.Route.build_prepare/1239240    warning: a struct for Plug.Conn is expected on struct update:241242        %Plug.Conn{conn | state: :sent}243244    but got type:245246        dynamic()247248    where "conn" was given the type:249250        # type: dynamic()251        # from: lib/phoenix/endpoint/render_errors.ex:55:17252        conn253254    when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"255256    type warning found at:257    │258 60 │           %Plug.Conn{conn | state: :sent}259    │           ~260    │261    └─ lib/phoenix/endpoint/render_errors.ex:60:11: Phoenix.Endpoint.RenderErrors.__catch__/5262263     warning: a struct for Plug.Conn is expected on struct update:264265         %Plug.Conn{conn | query_params: %{}, params: %{}}266267     but got type:268269         dynamic(%{..., params: %Plug.Conn.Unfetched{}})270271     where "conn" was given the types:272273         # type: dynamic(%{..., params: term()})274         # from: lib/phoenix/endpoint/render_errors.ex:133:17275         conn.params276277         # type: dynamic(%{..., params: %Plug.Conn.Unfetched{}})278         # from: lib/phoenix/endpoint/render_errors.ex:133:17279         conn.params280281     when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"282283     type warning found at:284     │285 134 │         %Plug.Conn.Unfetched{} -> %Plug.Conn{conn | query_params: %{}, params: %{}}286     │                                   ~287     │288     └─ lib/phoenix/endpoint/render_errors.ex:134:35: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1289290     warning: a struct for Plug.Conn is expected on struct update:291292         %Plug.Conn{conn | query_params: %{}, params: params}293294     but got type:295296         dynamic(%{..., params: not %Plug.Conn.Unfetched{}})297298     where "conn" was given the types:299300         # type: dynamic(%{..., params: term()})301         # from: lib/phoenix/endpoint/render_errors.ex:133:17302         conn.params303304         # type: dynamic(%{..., params: not %Plug.Conn.Unfetched{}})305         # from: lib/phoenix/endpoint/render_errors.ex:133:17306         conn.params307308     when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"309310     type warning found at:311     │312 135 │         params -> %Plug.Conn{conn | query_params: %{}, params: params}313     │                   ~314     │315     └─ lib/phoenix/endpoint/render_errors.ex:135:19: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1316317      warning: a struct for Plug.Conn is expected on struct update:318319          %Plug.Conn{conn | params: params}320321      but got type:322323          dynamic(%{..., params: map()})324325      where "conn" was given the type:326327          # type: dynamic(%{..., params: map()})328          # from: lib/phoenix/controller.ex:1327:17329          Map.get(conn.params, required_key)330331      when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"332333      type warning found at:334      │335 1334 │     %Plug.Conn{conn | params: params}336      │     ~337      │338      └─ lib/phoenix/controller.ex:1334:5: Phoenix.Controller.scrub_params/2339340Generated phoenix app341warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"342  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2343  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1344  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5345  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2346  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4347  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2348349==> phoenix_live_view350Compiling 39 files (.ex)351    warning: unused require Logger352    │353 48 │   require Logger354    │   ~355    │356    └─ lib/phoenix_live_view/socket.ex:48:3357358     warning: unused require Phoenix.ChannelTest359     │360 183 │   require Phoenix.ChannelTest361     │   ~362     │363     └─ lib/phoenix_live_view/test/live_view_test.ex:183:3364365     warning: unused require Phoenix.ConnTest366     │367 182 │   require Phoenix.ConnTest368     │   ~369     │370     └─ lib/phoenix_live_view/test/live_view_test.ex:182:3371372    warning: unused require Phoenix.ChannelTest373    │374  5 │   require Phoenix.ChannelTest375    │   ~376    │377    └─ lib/phoenix_live_view/test/upload_client.ex:5:3378379    warning: unused require Logger380    │381  6 │   require Logger382    │   ~383    │384    └─ lib/phoenix_live_view/upload_channel.ex:6:3385386     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:387388         %Phoenix.LiveView.Socket{389           socket390           | assigns: Map.merge(temp_assigns, socket.assigns),391             private:392               Map.update(393                 socket.private,394                 :temporary_assigns,395                 temp_assigns,396                 &Map.merge(&1, temp_assigns)397               )398         }399400     but got type:401402         dynamic()403404     where "socket" was given the type:405406         # type: dynamic()407         # from: lib/phoenix_live_view/utils.ex:415:28408         socket409410     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"411412     type warning found at:413     │414 422 │     %Socket{415     │     ~416     │417     └─ lib/phoenix_live_view/utils.ex:422:5: Phoenix.LiveView.Utils.handle_mount_option/3418419     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:420421         %Phoenix.LiveView.UploadEntry{422           entry423           | preflighted?: entry.preflighted? || Enum.__in__(entry.ref, refs)424         }425426     but got type:427428         dynamic()429430     where "entry" was given the type:431432         # type: dynamic()433         # from: lib/phoenix_live_view/upload_config.ex:362:17434         entry <- conf.entries435436     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"437438     type warning found at:439     │440 363 │         %UploadEntry{entry | preflighted?: entry.preflighted? || entry.ref in refs}441     │         ~442     │443     └─ lib/phoenix_live_view/upload_config.ex:363:9: Phoenix.LiveView.UploadConfig.mark_preflighted/2444445     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:446447         %Phoenix.LiveView.UploadEntry{entry | valid?: true, uuid: generate_uuid()}448449     but got type:450451         dynamic()452453     where "entry" was given the type:454455         # type: dynamic()456         # from: lib/phoenix_live_view/upload_config.ex:572:30457         entry458459     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"460461     type warning found at:462     │463 573 │     entry = %UploadEntry{entry | valid?: true, uuid: generate_uuid()}464     │             ~465     │466     └─ lib/phoenix_live_view/upload_config.ex:573:13: Phoenix.LiveView.UploadConfig.put_valid_entry/2467468     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:469470         %Phoenix.LiveView.UploadEntry{entry | valid?: false}471472     but got type:473474         dynamic()475476     where "entry" was given the type:477478         # type: dynamic()479         # from: lib/phoenix_live_view/upload_config.ex:585:32480         entry481482     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"483484     type warning found at:485     │486 586 │     entry = %UploadEntry{entry | valid?: false}487     │             ~488     │489     └─ lib/phoenix_live_view/upload_config.ex:586:13: Phoenix.LiveView.UploadConfig.put_invalid_entry/3490491     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:492493         %Phoenix.LiveView.UploadEntry{entry | cancelled?: true}494495     but got type:496497         dynamic()498499     where "entry" was given the type:500501         # type: dynamic()502         # from: lib/phoenix_live_view/upload_config.ex:669:42503         entry504505     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"506507     type warning found at:508     │509 669 │         update_entry(conf, entry.ref, fn entry -> %UploadEntry{entry | cancelled?: true} end)510     │                                                   ~511     │512     └─ lib/phoenix_live_view/upload_config.ex:669:51: Phoenix.LiveView.UploadConfig.cancel_entry/2513514      warning: the following clause is redundant:515516          def update(assigns, _key, fun) when is_function(fun, 1) or is_function(fun, 2)517518      it has type:519520          dynamic(), dynamic(), dynamic((none() -> term()) or (none(), none() -> term()))521522      previous clauses have already matched on the following types:523524          %Phoenix.LiveView.Socket{}, term(), (none(), none() -> term())525          %Phoenix.LiveView.Socket{}, term(), (none() -> term())526          term(), term(), (none(), none() -> term())527          term(), term(), (none() -> term())528529      │530 1378 │   def update(assigns, _key, fun) when is_function(fun, 1) or is_function(fun, 2) do531      │       ~532      │533      └─ lib/phoenix_component.ex:1378:7: Phoenix.Component.update/3534535    warning: the following clause will never match:536537        {:error, reason} ->538539    because it attempts to match on the result of:540541        IO.binwrite(state.file, data)542543    which has type:544545        dynamic(not {:error, term()})546547    type warning found at:548    │549 23 │       {:error, reason} -> {:error, reason, state}550    │       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~551    │552    └─ lib/phoenix_live_view/upload_tmp_file_writer.ex:23: Phoenix.LiveView.UploadTmpFileWriter.write_chunk/2553554    warning: Logger.disable/1 is deprecated. Use Logger.put_process_level(pid, :none) instead555    │556 73 │     Logger.disable(self())557    │            ~558    │559    └─ lib/phoenix_live_view/test/client_proxy.ex:73:12: Phoenix.LiveViewTest.ClientProxy.init/1560561     warning: a struct for Phoenix.LiveViewTest.ClientProxy is expected on struct update:562563         %Phoenix.LiveViewTest.ClientProxy{view | rendered: rendered}564565     but got type:566567         dynamic(%{..., rendered: map()})568569     where "view" was given the type:570571         # type: dynamic(%{..., rendered: map()})572         # from: lib/phoenix_live_view/test/client_proxy.ex:727:26573         Phoenix.LiveViewTest.DOM.merge_diff(view.rendered, diff)574575     when defining the variable "view", you must also pattern match on "%Phoenix.LiveViewTest.ClientProxy{}"576577     type warning found at:578     │579 728 │           new_view = %ClientProxy{view | rendered: rendered}580     │                      ~581     │582     └─ lib/phoenix_live_view/test/client_proxy.ex:728:22: Phoenix.LiveViewTest.ClientProxy.merge_rendered/3583584     warning: the right-hand side of || (shown as ... below) will never be executed:585586         conn.private[:live_view_connect_info] || prune_conn(conn) || ...587588     because the left-hand side always evaluates to:589590         dynamic(not false and not nil)591592     where "conn" was given the types:593594         # type: dynamic(%Plug.Conn{assigns: %{..., live_module: term()}, status: integer()})595         # from: lib/phoenix_live_view/test/live_view_test.ex:319:72596         %Plug.Conn{status: 200, assigns: %{live_module: live_module}} = conn597598         # type: dynamic(%Plug.Conn{599           assigns: %{..., live_module: term()},600           private:601             %{..., __struct__: atom()} or nil or empty_list() or non_empty_list(term(), term()) or602               non_struct_map(),603           status: integer()604         })605         # from: lib/phoenix_live_view/test/live_view_test.ex:333:35606         conn.private[:live_view_connect_params]607608     type warning found at:609     │610 334 │       connect_info: conn.private[:live_view_connect_info] || prune_conn(conn) || %{},611     │       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~612     │613     └─ lib/phoenix_live_view/test/live_view_test.ex:334: Phoenix.LiveViewTest.connect_from_static_token/2614615     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:616617         %Phoenix.LiveView.Socket{618           socket619           | assigns: %Phoenix.LiveView.Socket.AssignsNotInSocket{__assigns__: assigns}620         }621622     but got type:623624         dynamic(%{..., assigns: term()})625626     where "socket" was given the type:627628         # type: dynamic(%{..., assigns: term()})629         # from: lib/phoenix_live_view/renderer.ex:121:43630         %{assigns: assigns} = socket631632     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"633634     type warning found at:635     │636 122 │     socket = %Socket{socket | assigns: %Socket.AssignsNotInSocket{__assigns__: assigns}}637     │              ~638     │639     └─ lib/phoenix_live_view/renderer.ex:122:14: Phoenix.LiveView.Renderer.render_assigns/1640641     warning: the following pattern will never match:642643         template = Phoenix.LiveView.Utils.normalize_layout(template)644645     because the right-hand side has type:646647         none()648649     where "template" was given the types:650651         # type: binary()652         # from: lib/phoenix_live_view/router.ex:299:66653         is_binary(template)654655         # type: binary()656         # from: lib/phoenix_live_view/router.ex657         {:root_layout, {mod, template}}658659     type warning found at:660     │661 300 │         template = Phoenix.LiveView.Utils.normalize_layout(template)662     │                  ~663     │664     └─ lib/phoenix_live_view/router.ex:300:18: Phoenix.LiveView.Router.validate_live_session_opts/3665666     warning: the following pattern will never match:667668         template = Phoenix.LiveView.Utils.normalize_layout(template)669670     because the right-hand side has type:671672         none()673674     where "template" was given the types:675676         # type: binary()677         # from: lib/phoenix_live_view/router.ex:316:61678         is_binary(template)679680         # type: binary()681         # from: lib/phoenix_live_view/router.ex682         {:layout, {mod, template}}683684     type warning found at:685     │686 317 │         template = Phoenix.LiveView.Utils.normalize_layout(template)687     │                  ~688     │689     └─ lib/phoenix_live_view/router.ex:317:18: Phoenix.LiveView.Router.validate_live_session_opts/3690691     warning: the following clause is redundant:692693         def to_iodata(%_{} = struct)694695     it has type:696697         dynamic(%Phoenix.LiveView.Rendered{})698699     previous clauses have already matched on the following types:700701         %Phoenix.LiveView.Rendered{}702703     │704 152 │     def to_iodata(%_{} = struct) do705     │         ~706     │707     └─ lib/phoenix_live_view/engine.ex:152:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/1708709     warning: the 1st pattern in clause will never match:710711         nil712713     because it is expected to receive type:714715         dynamic(%Phoenix.LiveView.Rendered{})716717     hint: defimpl for Phoenix.LiveView.Rendered requires its callbacks to match exclusively on %Phoenix.LiveView.Rendered{}718719     type warning found at:720     │721 156 │     def to_iodata(nil) do722     │     ~~~~~~~~~~~~~~~~~~~~~723     │724     └─ lib/phoenix_live_view/engine.ex:156: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/1725726     warning: the following clause is redundant:727728         def to_iodata(other)729730     it has type:731732         dynamic(%Phoenix.LiveView.Rendered{})733734     previous clauses have already matched on the following types:735736         %Phoenix.LiveView.Rendered{}737738     │739 160 │     def to_iodata(other) do740     │         ~741     │742     └─ lib/phoenix_live_view/engine.ex:160:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/1743744     warning: this clause of defp class_names/1 is never used (or it will always fail/warn when invoked)745     │746 903 │   defp class_names(nil), do: []747     │        ~748     │749     └─ lib/phoenix_live_view/js.ex:903:8: Phoenix.LiveView.JS.class_names/1750751Generated phoenix_live_view app752warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"753  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2754  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1755  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5756  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2757  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4758  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2759760==> heroicons761Compiling 3 files (.ex)762Generated heroicons app763==> paleta764Compiling 67 files (.ex)765    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)766    │767 56 │             <%= live_component(Paleta.Components.Live.GlobalSearch,768    │                 ^^^^^^^^^^^^^^769    │770    └─ lib/components/app_header.ex:56:17: Paleta.Components.AppHeader."app_header (overridable 1)"/1771772773== Compilation error in file lib/components/app_header.ex ==774** (CompileError) lib/components/app_header.ex: cannot compile module Paleta.Components.AppHeader (errors have been logged)775776could 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"