memorex

Build log

host

memorex 0.2.4 · fail · run memorex-0.2.4-1790999673734
796 of 796 lines
1Resolving Hex dependencies...2Resolution completed in 0.352s3Unchanged: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  dart_sass 0.7.020  db_connection 2.10.221  decimal 3.1.122  ecto 3.14.223  ecto_sql 3.14.024  elixir_make 0.10.025  esbuild 0.10.026  expo 1.1.127  gettext 0.26.228  interactive_cmd 0.1.429  jason 1.4.530  memorex 0.2.431  mime 2.0.732  nerves 2.0.0-pre.233  nerves_discovery 0.1.534  nerves_logging 0.2.435  nerves_runtime 0.13.1336  nerves_system_bbb 2.30.237  nerves_system_br 1.34.438  nerves_system_mangopi_mq_pro 0.17.239  nerves_system_qemu_aarch64 0.4.240  nerves_system_rpi0 2.1.241  nerves_system_rpi4 2.1.242  nerves_system_rpi5 2.1.243  nerves_system_trellis 0.5.044  nerves_system_x86_64 1.34.245  nerves_toolchain_aarch64_nerves_linux_gnu 15.3.146  nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.147  nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.148  nerves_toolchain_riscv64_nerves_linux_gnu 15.3.149  nerves_toolchain_x86_64_nerves_linux_musl 15.3.150  nerves_uevent 0.1.751  phoenix 1.7.2452  phoenix_ecto 4.7.053  phoenix_html 3.3.454  phoenix_live_dashboard 0.8.755  phoenix_live_view 0.20.17 VULNERABLE!56    EEF-CVE-2026-64941 (LOW)57    aka: CVE-2026-64941, GHSA-36m4-rm57-3prf58    Open redirect in Phoenix.LiveView.validate_local_url!/2 via ASCII tab, LF and CR59    https://osv.dev/vulnerability/EEF-CVE-2026-6494160  phoenix_pubsub 2.3.061  phoenix_template 1.1.062  plug 1.20.363  plug_cowboy 2.9.064  plug_crypto 2.2.065  postgrex 0.22.466  property_table 0.3.467  ranch 2.3.068  ring_logger 0.11.769  tablet 0.3.370  telemetry 1.4.271  telemetry_metrics 0.6.272  telemetry_poller 1.3.073  timex 3.7.1374  toml 0.7.075  toolshed 0.5.076  tzdata 1.2.277  uboot_env 1.0.278  uuid 1.1.879  websock 0.5.380  websock_adapter 0.5.981Found packages with security advisories, see above for details82All dependencies have been fetched83==> dart_sass84Compiling 3 files (.ex)85     warning: using single-quoted strings to represent charlists is deprecated.86     Use ~c"" if you indeed want a charlist or use "" instead.87     You may run "mix format --migrate" to change all single-quoted88     strings to use the ~c sigil and fix this warning.89     │90 348 │         {'location', download} = List.keyfind(headers, 'location', 0)91     │          ~92     │93     └─ lib/dart_sass.ex:348:109495     warning: using single-quoted strings to represent charlists is deprecated.96     Use ~c"" if you indeed want a charlist or use "" instead.97     You may run "mix format --migrate" to change all single-quoted98     strings to use the ~c sigil and fix this warning.99     │100 348 │         {'location', download} = List.keyfind(headers, 'location', 0)101     │                                                        ~102     │103     └─ lib/dart_sass.ex:348:56104105Generated dart_sass app106==> esbuild107Compiling 4 files (.ex)108Generated esbuild app109warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"110  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2111  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1112  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5113  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2114  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4115  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2116117==> phoenix_ecto118Compiling 7 files (.ex)119Generated phoenix_ecto app120==> websock_adapter121Compiling 4 files (.ex)122Generated websock_adapter app123warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"124  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2125  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1126  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5127  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2128  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4129  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2130131==> phoenix132Compiling 71 files (.ex)133    warning: unused require Logger134    │135  9 │   require Logger136    │   ~137    │138    └─ lib/phoenix/config.ex:9:3139140     warning: unused require Logger141     │142 281 │   require Logger143     │   ~144     │145     └─ lib/phoenix/endpoint.ex:281:3146147    warning: unused require Phoenix.Endpoint148    │149  6 │   require Phoenix.Endpoint150    │   ~151    │152    └─ lib/phoenix/controller.ex:6:3153154    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 operator155    │156 46 │       <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix157    │                             ~158    │159    └─ lib/phoenix/naming.ex:46:29: Phoenix.Naming.unsuffix/2160161    warning: unused require Phoenix.Endpoint162    │163 17 │   require Phoenix.Endpoint164    │   ~165    │166    └─ lib/phoenix/endpoint/render_errors.ex:17:3167168    warning: unused require Logger169    │170 70 │   require Logger171    │   ~172    │173    └─ lib/phoenix/socket/pool_supervisor.ex:70:3174175    warning: unused require Phoenix.Endpoint176    │177  6 │   require Phoenix.Endpoint178    │   ~179    │180    └─ lib/phoenix/channel/server.ex:6:3181182     warning: unused require Phoenix.Endpoint183     │184 202 │   require Phoenix.Endpoint185     │   ~186     │187     └─ lib/phoenix/socket.ex:202:3188189     warning: unused require Logger190     │191 100 │   require Logger192     │   ~193     │194     └─ lib/phoenix/token.ex:100:3195196     warning: comparison between distinct types found:197198         merge_all != []199200     given types:201202         dynamic(non_empty_list({atom(), term()})) != empty_list()203204     where "merge_all" was given the type:205206         # type: dynamic(non_empty_list({atom(), term()}))207         # from: lib/phoenix/router/route.ex:121:15208         merge_all = merge_params ++ merge_private ++ merge_assigns209210     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 false211212     type warning found at:213     │214 123 │     if merge_all != [] do215     │                  ~216     │217     └─ lib/phoenix/router/route.ex:123:18: Phoenix.Router.Route.build_prepare/1218219    warning: a struct for Plug.Conn is expected on struct update:220221        %Plug.Conn{conn | state: :sent}222223    but got type:224225        dynamic()226227    where "conn" was given the type:228229        # type: dynamic()230        # from: lib/phoenix/endpoint/render_errors.ex:55:17231        conn232233    when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"234235    type warning found at:236    │237 60 │           %Plug.Conn{conn | state: :sent}238    │           ~239    │240    └─ lib/phoenix/endpoint/render_errors.ex:60:11: Phoenix.Endpoint.RenderErrors.__catch__/5241242     warning: a struct for Plug.Conn is expected on struct update:243244         %Plug.Conn{conn | query_params: %{}, params: %{}}245246     but got type:247248         dynamic(%{..., params: %Plug.Conn.Unfetched{}})249250     where "conn" was given the types:251252         # type: dynamic(%{..., params: term()})253         # from: lib/phoenix/endpoint/render_errors.ex:133:17254         conn.params255256         # type: dynamic(%{..., params: %Plug.Conn.Unfetched{}})257         # from: lib/phoenix/endpoint/render_errors.ex:133:17258         conn.params259260     when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"261262     type warning found at:263     │264 134 │         %Plug.Conn.Unfetched{} -> %Plug.Conn{conn | query_params: %{}, params: %{}}265     │                                   ~266     │267     └─ lib/phoenix/endpoint/render_errors.ex:134:35: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1268269     warning: a struct for Plug.Conn is expected on struct update:270271         %Plug.Conn{conn | query_params: %{}, params: params}272273     but got type:274275         dynamic(%{..., params: not %Plug.Conn.Unfetched{}})276277     where "conn" was given the types:278279         # type: dynamic(%{..., params: term()})280         # from: lib/phoenix/endpoint/render_errors.ex:133:17281         conn.params282283         # type: dynamic(%{..., params: not %Plug.Conn.Unfetched{}})284         # from: lib/phoenix/endpoint/render_errors.ex:133:17285         conn.params286287     when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"288289     type warning found at:290     │291 135 │         params -> %Plug.Conn{conn | query_params: %{}, params: params}292     │                   ~293     │294     └─ lib/phoenix/endpoint/render_errors.ex:135:19: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1295296      warning: a struct for Plug.Conn is expected on struct update:297298          %Plug.Conn{conn | params: params}299300      but got type:301302          dynamic(%{..., params: map()})303304      where "conn" was given the type:305306          # type: dynamic(%{..., params: map()})307          # from: lib/phoenix/controller.ex:1327:17308          Map.get(conn.params, required_key)309310      when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"311312      type warning found at:313      │314 1334 │     %Plug.Conn{conn | params: params}315      │     ~316      │317      └─ lib/phoenix/controller.ex:1334:5: Phoenix.Controller.scrub_params/2318319Generated phoenix app320warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"321  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2322  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1323  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5324  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2325  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4326  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2327328==> phoenix_live_view329Compiling 39 files (.ex)330    warning: unused require Logger331    │332 48 │   require Logger333    │   ~334    │335    └─ lib/phoenix_live_view/socket.ex:48:3336337     warning: unused require Phoenix.ChannelTest338     │339 183 │   require Phoenix.ChannelTest340     │   ~341     │342     └─ lib/phoenix_live_view/test/live_view_test.ex:183:3343344     warning: unused require Phoenix.ConnTest345     │346 182 │   require Phoenix.ConnTest347     │   ~348     │349     └─ lib/phoenix_live_view/test/live_view_test.ex:182:3350351    warning: unused require Phoenix.ChannelTest352    │353  5 │   require Phoenix.ChannelTest354    │   ~355    │356    └─ lib/phoenix_live_view/test/upload_client.ex:5:3357358    warning: unused require Logger359    │360  6 │   require Logger361    │   ~362    │363    └─ lib/phoenix_live_view/upload_channel.ex:6:3364365     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:366367         %Phoenix.LiveView.Socket{368           socket369           | assigns: Map.merge(temp_assigns, socket.assigns),370             private:371               Map.update(372                 socket.private,373                 :temporary_assigns,374                 temp_assigns,375                 &Map.merge(&1, temp_assigns)376               )377         }378379     but got type:380381         dynamic()382383     where "socket" was given the type:384385         # type: dynamic()386         # from: lib/phoenix_live_view/utils.ex:415:28387         socket388389     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"390391     type warning found at:392     │393 422 │     %Socket{394     │     ~395     │396     └─ lib/phoenix_live_view/utils.ex:422:5: Phoenix.LiveView.Utils.handle_mount_option/3397398     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:399400         %Phoenix.LiveView.UploadEntry{401           entry402           | preflighted?: entry.preflighted? || Enum.__in__(entry.ref, refs)403         }404405     but got type:406407         dynamic()408409     where "entry" was given the type:410411         # type: dynamic()412         # from: lib/phoenix_live_view/upload_config.ex:362:17413         entry <- conf.entries414415     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"416417     type warning found at:418     │419 363 │         %UploadEntry{entry | preflighted?: entry.preflighted? || entry.ref in refs}420     │         ~421     │422     └─ lib/phoenix_live_view/upload_config.ex:363:9: Phoenix.LiveView.UploadConfig.mark_preflighted/2423424     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:425426         %Phoenix.LiveView.UploadEntry{entry | valid?: true, uuid: generate_uuid()}427428     but got type:429430         dynamic()431432     where "entry" was given the type:433434         # type: dynamic()435         # from: lib/phoenix_live_view/upload_config.ex:572:30436         entry437438     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"439440     type warning found at:441     │442 573 │     entry = %UploadEntry{entry | valid?: true, uuid: generate_uuid()}443     │             ~444     │445     └─ lib/phoenix_live_view/upload_config.ex:573:13: Phoenix.LiveView.UploadConfig.put_valid_entry/2446447     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:448449         %Phoenix.LiveView.UploadEntry{entry | valid?: false}450451     but got type:452453         dynamic()454455     where "entry" was given the type:456457         # type: dynamic()458         # from: lib/phoenix_live_view/upload_config.ex:585:32459         entry460461     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"462463     type warning found at:464     │465 586 │     entry = %UploadEntry{entry | valid?: false}466     │             ~467     │468     └─ lib/phoenix_live_view/upload_config.ex:586:13: Phoenix.LiveView.UploadConfig.put_invalid_entry/3469470     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:471472         %Phoenix.LiveView.UploadEntry{entry | cancelled?: true}473474     but got type:475476         dynamic()477478     where "entry" was given the type:479480         # type: dynamic()481         # from: lib/phoenix_live_view/upload_config.ex:669:42482         entry483484     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"485486     type warning found at:487     │488 669 │         update_entry(conf, entry.ref, fn entry -> %UploadEntry{entry | cancelled?: true} end)489     │                                                   ~490     │491     └─ lib/phoenix_live_view/upload_config.ex:669:51: Phoenix.LiveView.UploadConfig.cancel_entry/2492493      warning: the following clause is redundant:494495          def update(assigns, _key, fun) when is_function(fun, 1) or is_function(fun, 2)496497      it has type:498499          dynamic(), dynamic(), dynamic((none() -> term()) or (none(), none() -> term()))500501      previous clauses have already matched on the following types:502503          %Phoenix.LiveView.Socket{}, term(), (none(), none() -> term())504          %Phoenix.LiveView.Socket{}, term(), (none() -> term())505          term(), term(), (none(), none() -> term())506          term(), term(), (none() -> term())507508      │509 1378 │   def update(assigns, _key, fun) when is_function(fun, 1) or is_function(fun, 2) do510      │       ~511      │512      └─ lib/phoenix_component.ex:1378:7: Phoenix.Component.update/3513514    warning: the following clause will never match:515516        {:error, reason} ->517518    because it attempts to match on the result of:519520        IO.binwrite(state.file, data)521522    which has type:523524        dynamic(not {:error, term()})525526    type warning found at:527    │528 23 │       {:error, reason} -> {:error, reason, state}529    │       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~530    │531    └─ lib/phoenix_live_view/upload_tmp_file_writer.ex:23: Phoenix.LiveView.UploadTmpFileWriter.write_chunk/2532533    warning: Logger.disable/1 is deprecated. Use Logger.put_process_level(pid, :none) instead534    │535 73 │     Logger.disable(self())536    │            ~537    │538    └─ lib/phoenix_live_view/test/client_proxy.ex:73:12: Phoenix.LiveViewTest.ClientProxy.init/1539540     warning: the right-hand side of || (shown as ... below) will never be executed:541542         conn.private[:live_view_connect_info] || prune_conn(conn) || ...543544     because the left-hand side always evaluates to:545546         dynamic(not false and not nil)547548     where "conn" was given the types:549550         # type: dynamic(%Plug.Conn{assigns: %{..., live_module: term()}, status: integer()})551         # from: lib/phoenix_live_view/test/live_view_test.ex:319:72552         %Plug.Conn{status: 200, assigns: %{live_module: live_module}} = conn553554         # type: dynamic(%Plug.Conn{555           assigns: %{..., live_module: term()},556           private:557             %{..., __struct__: atom()} or nil or empty_list() or non_empty_list(term(), term()) or558               non_struct_map(),559           status: integer()560         })561         # from: lib/phoenix_live_view/test/live_view_test.ex:333:35562         conn.private[:live_view_connect_params]563564     type warning found at:565     │566 334 │       connect_info: conn.private[:live_view_connect_info] || prune_conn(conn) || %{},567     │       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~568     │569     └─ lib/phoenix_live_view/test/live_view_test.ex:334: Phoenix.LiveViewTest.connect_from_static_token/2570571     warning: a struct for Phoenix.LiveViewTest.ClientProxy is expected on struct update:572573         %Phoenix.LiveViewTest.ClientProxy{view | rendered: rendered}574575     but got type:576577         dynamic(%{..., rendered: map()})578579     where "view" was given the type:580581         # type: dynamic(%{..., rendered: map()})582         # from: lib/phoenix_live_view/test/client_proxy.ex:727:26583         Phoenix.LiveViewTest.DOM.merge_diff(view.rendered, diff)584585     when defining the variable "view", you must also pattern match on "%Phoenix.LiveViewTest.ClientProxy{}"586587     type warning found at:588     │589 728 │           new_view = %ClientProxy{view | rendered: rendered}590     │                      ~591     │592     └─ lib/phoenix_live_view/test/client_proxy.ex:728:22: Phoenix.LiveViewTest.ClientProxy.merge_rendered/3593594     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:595596         %Phoenix.LiveView.Socket{597           socket598           | assigns: %Phoenix.LiveView.Socket.AssignsNotInSocket{__assigns__: assigns}599         }600601     but got type:602603         dynamic(%{..., assigns: term()})604605     where "socket" was given the type:606607         # type: dynamic(%{..., assigns: term()})608         # from: lib/phoenix_live_view/renderer.ex:121:43609         %{assigns: assigns} = socket610611     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"612613     type warning found at:614     │615 122 │     socket = %Socket{socket | assigns: %Socket.AssignsNotInSocket{__assigns__: assigns}}616     │              ~617     │618     └─ lib/phoenix_live_view/renderer.ex:122:14: Phoenix.LiveView.Renderer.render_assigns/1619620     warning: the following pattern will never match:621622         template = Phoenix.LiveView.Utils.normalize_layout(template)623624     because the right-hand side has type:625626         none()627628     where "template" was given the types:629630         # type: binary()631         # from: lib/phoenix_live_view/router.ex:299:66632         is_binary(template)633634         # type: binary()635         # from: lib/phoenix_live_view/router.ex636         {:root_layout, {mod, template}}637638     type warning found at:639     │640 300 │         template = Phoenix.LiveView.Utils.normalize_layout(template)641     │                  ~642     │643     └─ lib/phoenix_live_view/router.ex:300:18: Phoenix.LiveView.Router.validate_live_session_opts/3644645     warning: the following pattern will never match:646647         template = Phoenix.LiveView.Utils.normalize_layout(template)648649     because the right-hand side has type:650651         none()652653     where "template" was given the types:654655         # type: binary()656         # from: lib/phoenix_live_view/router.ex:316:61657         is_binary(template)658659         # type: binary()660         # from: lib/phoenix_live_view/router.ex661         {:layout, {mod, template}}662663     type warning found at:664     │665 317 │         template = Phoenix.LiveView.Utils.normalize_layout(template)666     │                  ~667     │668     └─ lib/phoenix_live_view/router.ex:317:18: Phoenix.LiveView.Router.validate_live_session_opts/3669670     warning: the following clause is redundant:671672         def to_iodata(%_{} = struct)673674     it has type:675676         dynamic(%Phoenix.LiveView.Rendered{})677678     previous clauses have already matched on the following types:679680         %Phoenix.LiveView.Rendered{}681682     │683 152 │     def to_iodata(%_{} = struct) do684     │         ~685     │686     └─ lib/phoenix_live_view/engine.ex:152:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/1687688     warning: the 1st pattern in clause will never match:689690         nil691692     because it is expected to receive type:693694         dynamic(%Phoenix.LiveView.Rendered{})695696     hint: defimpl for Phoenix.LiveView.Rendered requires its callbacks to match exclusively on %Phoenix.LiveView.Rendered{}697698     type warning found at:699     │700 156 │     def to_iodata(nil) do701     │     ~~~~~~~~~~~~~~~~~~~~~702     │703     └─ lib/phoenix_live_view/engine.ex:156: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/1704705     warning: the following clause is redundant:706707         def to_iodata(other)708709     it has type:710711         dynamic(%Phoenix.LiveView.Rendered{})712713     previous clauses have already matched on the following types:714715         %Phoenix.LiveView.Rendered{}716717     │718 160 │     def to_iodata(other) do719     │         ~720     │721     └─ lib/phoenix_live_view/engine.ex:160:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/1722723     warning: this clause of defp class_names/1 is never used (or it will always fail/warn when invoked)724     │725 903 │   defp class_names(nil), do: []726     │        ~727     │728     └─ lib/phoenix_live_view/js.ex:903:8: Phoenix.LiveView.JS.class_names/1729730Generated phoenix_live_view app731warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"732  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2733  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1734  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5735  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2736  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4737  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2738739==> phoenix_live_dashboard740Compiling 36 files (.ex)741     warning: Postgrex.Interval.to_string/1 is undefined (module Postgrex.Interval is not available or is yet to be defined)742     │743 281 │     do: struct.to_string(value)744     │                ~745     │746     └─ lib/phoenix/live_dashboard/pages/ecto_stats_page.ex:281:16: Phoenix.LiveDashboard.EctoStatsPage.format/2747748Generated phoenix_live_dashboard app749==> uuid750Compiling 1 file (.ex)751    warning: use Bitwise is deprecated. import Bitwise instead752    │753  2 │   use Bitwise, only_operators: true754    │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~755    │756    └─ lib/uuid.ex:2: UUID (module)757758Generated uuid app759==> memorex760Compiling 35 files (.ex)761warning: defining a Gettext backend by calling762763    use Gettext, otp_app: ...764765is deprecated. To define a backend, call:766767    use Gettext.Backend, otp_app: :my_app768769Then, instead of importing your backend, call this in your module:770771    use Gettext, backend: MyApp.Gettext772773  lib/memorex_web/gettext.ex:23: MemorexWeb.Gettext (module)774775    error: module Phoenix.View is not loaded and could not be found. This may be happening because the module you are trying to load directly or indirectly depends on the current module776    │777  4 │   use MemorexWeb, :live_component778    │   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^779    │780    └─ lib/memorex_web/live/card_live/card_component.ex:4: MemorexWeb.CardLive.CardComponent (module)781782    error: module Phoenix.View is not loaded and could not be found. This may be happening because the module you are trying to load directly or indirectly depends on the current module783    │784  4 │   use MemorexWeb, :live_view785    │   ^^^^^^^^^^^^^^^^^^^^^^^^^^786    │787    └─ lib/memorex_web/live/card_live/edit.ex:4: MemorexWeb.CardLive.Edit (module)788789790== Compilation error in file lib/memorex_web/live/card_live/card_component.ex ==791** (CompileError) lib/memorex_web/live/card_live/card_component.ex: cannot compile module MemorexWeb.CardLive.CardComponent (errors have been logged)792    expanding macro: MemorexWeb.__using__/1793    lib/memorex_web/live/card_live/card_component.ex:4: MemorexWeb.CardLive.CardComponent (module)794    (elixir 1.20.3) expanding macro: Kernel.use/2795    lib/memorex_web/live/card_live/card_component.ex:4: MemorexWeb.CardLive.CardComponent (module)796could not compile dependency :memorex, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile memorex --force", update it with "mix deps.update memorex" or clean it with "mix deps.clean memorex"