mppm

Build log

host

mppm 0.1.1 · fail · run mppm-0.1.1-1791006358568
1613 of 1613 lines
1Resolving Hex dependencies...2Resolution completed in 0.414s3Unchanged:4  certifi 2.15.05  circular_buffer 1.1.06  cowboy 2.19.07  cowboy_telemetry 0.3.18  cowlib 2.20.0 VULNERABLE!9    EEF-CVE-2026-43966 (MEDIUM)10    aka: CVE-2026-43966, GHSA-w4f7-4cxr-rv3c11    HTTP Response Splitting via Non-VCHAR Bytes in cow_http_struct_hd:escape_string/212    https://osv.dev/vulnerability/EEF-CVE-2026-439661314    EEF-CVE-2026-43969 (LOW)15    aka: CVE-2026-43969, GHSA-g2wm-735q-3f5616    Cookie Request Header Injection via Unvalidated Encoder in cow_cookie:cookie/117    https://osv.dev/vulnerability/EEF-CVE-2026-4396918  db_connection 2.10.219  decimal 3.1.120  ecto 3.14.221  ecto_network 1.3.022  ecto_sql 3.14.023  elixir_make 0.10.024  erlsom 1.5.225  expo 1.1.126  gettext 0.26.227  hackney 1.25.0 VULNERABLE!28    EEF-CVE-2026-47071 (HIGH)29    aka: CVE-2026-47071, GHSA-gp9c-pm5m-5cxr30    SOCKS5 TLS upgrade ignores caller timeout in hackney31    https://osv.dev/vulnerability/EEF-CVE-2026-470713233    EEF-CVE-2026-47076 (MEDIUM)34    aka: CVE-2026-47076, GHSA-pj7v-xfvx-wmjq35    SSRF allowlist bypass via percent-encoded host in hackney36    https://osv.dev/vulnerability/EEF-CVE-2026-470763738    EEF-CVE-2026-47069 (LOW)39    aka: CVE-2026-47069, GHSA-mp55-p8c9-rfw240    CRLF injection in cookie domain/path options in hackney41    https://osv.dev/vulnerability/EEF-CVE-2026-470694243    EEF-CVE-2026-47075 (MEDIUM)44    aka: CVE-2026-47075, GHSA-j9wq-vxxc-94wf45    CR/LF injection in query parameter in hackney46    https://osv.dev/vulnerability/EEF-CVE-2026-4707547  httpoison 1.8.248  idna 6.1.149  interactive_cmd 0.1.450  jason 1.4.551  logger_file_backend 0.0.1452  metrics 1.0.153  mime 2.0.754  mimerl 1.5.055  mppm 0.1.156  nerves 2.0.0-pre.257  nerves_discovery 0.1.558  nerves_logging 0.2.459  nerves_runtime 0.13.1360  nerves_system_bbb 2.30.261  nerves_system_br 1.34.462  nerves_system_mangopi_mq_pro 0.17.263  nerves_system_qemu_aarch64 0.4.264  nerves_system_rpi0 2.1.265  nerves_system_rpi4 2.1.266  nerves_system_rpi5 2.1.267  nerves_system_trellis 0.5.068  nerves_system_x86_64 1.34.269  nerves_toolchain_aarch64_nerves_linux_gnu 15.3.170  nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.171  nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.172  nerves_toolchain_riscv64_nerves_linux_gnu 15.3.173  nerves_toolchain_x86_64_nerves_linux_musl 15.3.174  nerves_uevent 0.1.775  oauth2 2.1.176  observer_cli 1.8.877  parse_trans 3.4.178  phoenix 1.5.15 VULNERABLE!79    GHSA-p8f7-22gq-m7j9 (HIGH)80    aka: CVE-2022-4297581    Phoenix before 1.6.14 mishandles check_origin wildcarding82    https://osv.dev/vulnerability/GHSA-p8f7-22gq-m7j983  phoenix_ecto 4.7.084  phoenix_html 2.14.3 VULNERABLE!85    GHSA-5g2h-9x5v-5h3x (MEDIUM)86    aka: CVE-2021-46871, GHSA-j3gg-r6gp-95q287    phoenix_html allows Cross-site Scripting in HEEx class attributes88    https://osv.dev/vulnerability/GHSA-5g2h-9x5v-5h3x89  phoenix_live_dashboard 0.4.090  phoenix_live_view 0.15.7 VULNERABLE!91    EEF-CVE-2026-64941 (LOW)92    aka: CVE-2026-64941, GHSA-36m4-rm57-3prf93    Open redirect in Phoenix.LiveView.validate_local_url!/2 via ASCII tab, LF and CR94    https://osv.dev/vulnerability/EEF-CVE-2026-6494195  phoenix_pubsub 2.3.096  plug 1.20.397  plug_cowboy 2.9.098  plug_crypto 1.2.599  postgrex 0.22.4100  property_table 0.3.4101  ranch 2.3.0102  recon 2.5.6103  ring_logger 0.11.7104  slugify 1.3.1105  ssl_verify_fun 1.1.7106  tablet 0.3.3107  telemetry 0.4.3108  telemetry_metrics 0.6.2109  tesla 1.21.3110  toolshed 0.5.0111  uboot_env 1.0.2112  unicode_util_compat 0.7.1113  xmlrpc 1.5.0114Found packages with security advisories, see above for details115All dependencies have been fetched116===> Analyzing applications...117===> Compiling erlsom118      ┌─ src/erlsom_sax_latin9.erl:119      │120 1063 │        case catch list_to_integer(Tail1) of121      │             ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.122Compile directive 'nowarn_deprecated_catch' can be used to suppress123warnings in selected modules.124125126     ┌─ src/erlsom.erl:127     │128 143 │    case catch erlsom_compile:compile(Xsd, Options) of129     │         ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.130Compile directive 'nowarn_deprecated_catch' can be used to suppress131warnings in selected modules.132133     ┌─ src/erlsom.erl:134     │135 245 │    case catch erlsom_sax:parseDocument(Xml, State,136     │         ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.137Compile directive 'nowarn_deprecated_catch' can be used to suppress138warnings in selected modules.139140141      ┌─ src/erlsom_sax_utf8.erl:142      │143 1063 │        case catch list_to_integer(Tail1) of144      │             ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.145Compile directive 'nowarn_deprecated_catch' can be used to suppress146warnings in selected modules.147148149      ┌─ src/erlsom_sax_list.erl:150      │151 1063 │        case catch list_to_integer(Tail1) of152      │             ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.153Compile directive 'nowarn_deprecated_catch' can be used to suppress154warnings in selected modules.155156157      ┌─ src/erlsom_sax_latin1.erl:158      │159 1063 │        case catch list_to_integer(Tail1) of160      │             ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.161Compile directive 'nowarn_deprecated_catch' can be used to suppress162warnings in selected modules.163164165      ┌─ src/erlsom_sax_utf16be.erl:166      │167 1063 │        case catch list_to_integer(Tail1) of168      │             ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.169Compile directive 'nowarn_deprecated_catch' can be used to suppress170warnings in selected modules.171172173      ┌─ src/erlsom_sax_utf16le.erl:174      │175 1063 │        case catch list_to_integer(Tail1) of176      │             ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.177Compile directive 'nowarn_deprecated_catch' can be used to suppress178warnings in selected modules.179180181     ┌─ src/erlsom_compile.erl:182     │183 250 │    case catch transform(ParsedXsd, Acc) of184     │         ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.185Compile directive 'nowarn_deprecated_catch' can be used to suppress186warnings in selected modules.187188     ┌─ src/erlsom_compile.erl:189     │190 254 │        case catch erlsom_pass2:secondPass(IntermediateResult#p1acc.tps,191     │             ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.192Compile directive 'nowarn_deprecated_catch' can be used to suppress193warnings in selected modules.194195196==> recon197Compiling 6 files (.erl)198Generated recon app199==> observer_cli200Compiling 17 files (.erl)201Generated observer_cli app202==> logger_file_backend203Compiling 1 file (.ex)204Generated logger_file_backend app205==> db_connection206Compiling 18 files (.ex)207Generated db_connection app208==> ecto209Compiling 56 files (.ex)210Generated ecto app211==> xmlrpc212Compiling 5 files (.ex)213Generated xmlrpc app214==> slugify215Compiling 1 file (.ex)216Generated slugify app217warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"218  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2219  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1220  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5221  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2222  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4223  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2224225==> postgrex226Compiling 70 files (.ex)227Generated postgrex app228==> ecto_sql229Compiling 25 files (.ex)230Generated ecto_sql app231warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"232  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2233  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1234  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5235  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2236  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4237  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2238239==> phoenix_ecto240Compiling 7 files (.ex)241Generated phoenix_ecto app242==> tesla243Compiling 57 files (.ex)244Generated tesla app245==> oauth2246Compiling 13 files (.ex)247Generated oauth2 app248warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"249  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2250  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1251  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5252  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2253  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4254  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2255256==> phoenix257Compiling 66 files (.ex)258     warning: the variable "prefix" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator259     │260 194 │       <<attr::size(prefix)-binary, ":unique">> -> attr261     │                    ~262     │263     └─ lib/mix/phoenix/schema.ex:194:20: Mix.Phoenix.Schema.drop_unique/1264265     warning: using single-quoted strings to represent charlists is deprecated.266     Use ~c"" if you indeed want a charlist or use "" instead.267     You may run "mix format --migrate" to change all single-quoted268     strings to use the ~c sigil and fix this warning.269     │270 258 │           notBefore: {:utcTime, '#{not_before}000000Z'},271     │                                 ~272     │273     └─ lib/mix/tasks/phx.gen.cert.ex:258:33274275     warning: using single-quoted strings to represent charlists is deprecated.276     Use ~c"" if you indeed want a charlist or use "" instead.277     You may run "mix format --migrate" to change all single-quoted278     strings to use the ~c sigil and fix this warning.279     │280 259 │           notAfter: {:utcTime, '#{not_after}000000Z'}281     │                                ~282     │283     └─ lib/mix/tasks/phx.gen.cert.ex:259:32284285    warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead286    │287 55 │             Logger.warn(288    │                    ~289    │290    └─ lib/phoenix/code_reloader/server.ex:55:20: Phoenix.CodeReloader.Server.handle_call/3291292    warning: unused require Logger293    │294  9 │   require Logger295    │   ~296    │297    └─ lib/phoenix/config.ex:9:3298299      warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.300301      This error happens when you have function calls without parentheses inside keywords. For example:302303          function(arg, one: nested_call a, b, c)304          function(arg, one: if expr, do: :this, else: :that)305306      In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:307308          function(arg, one: if(expr, do: :this, else: :that))309          function(arg, one: nested_call(a, b, c))310311      Ambiguity found at:312      │313 1002 │   defp get_disposition_type(other), do: raise ArgumentError, "expected :disposition to be :attachment or :inline, got: #{inspect(other)}"314      │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~315      │316      └─ lib/phoenix/controller.ex:1002317318     warning: unused require Logger319     │320 240 │   require Logger321     │   ~322     │323     └─ lib/phoenix/endpoint.ex:240:3324325      warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead326      │327 1013 │       Logger.warn "send_download/3 has been invoked during an AJAX request. " <>328      │              ~329      │330      └─ lib/phoenix/controller.ex:1013:14: Phoenix.Controller.warn_if_ajax/1331332    warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead333    │334 82 │     Logger.warn "Phoenix.Endpoint.CowboyAdapter is deprecated and it will be removed in next versions. " <>335    │            ~336    │337    └─ lib/phoenix/endpoint/cowboy_adapter.ex:82:12: Phoenix.Endpoint.CowboyAdapter.child_specs/2338339    warning: unused require Phoenix.Endpoint340    │341  6 │   require Phoenix.Endpoint342    │   ~343    │344    └─ lib/phoenix/controller.ex:6:3345346    warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead347    │348 71 │             Logger.warn("no configuration found for otp_app #{inspect(otp_app)} and module #{inspect(mod)}")349    │                    ~350    │351    └─ lib/phoenix/endpoint/supervisor.ex:71:20: Phoenix.Endpoint.Supervisor.init/1352353    warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead354    │355 95 │       Logger.warn(":instrumenters configuration for #{inspect(mod)} is deprecated and has no effect")356    │              ~357    │358    └─ lib/phoenix/endpoint/supervisor.ex:95:14: Phoenix.Endpoint.Supervisor.init/1359360     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead361     │362 116 │       Logger.warn """363     │              ~364     │365     └─ lib/phoenix/endpoint/supervisor.ex:116:14: Phoenix.Endpoint.Supervisor.pubsub_children/2366367     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead368     │369 166 │         Logger.warn "Phoenix.Endpoint.CowboyHandler is deprecated, please use Phoenix.Endpoint.CowboyAdapter instead"370     │                ~371     │372     └─ lib/phoenix/endpoint/supervisor.ex:166:16: Phoenix.Endpoint.Supervisor.user_adapter/2373374     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead375     │376 170 │         Logger.warn "The :handler option in #{inspect endpoint} is deprecated, please use :adapter instead"377     │                ~378     │379     └─ lib/phoenix/endpoint/supervisor.ex:170:16: Phoenix.Endpoint.Supervisor.user_adapter/2380381     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead382     │383 346 │       Logger.warn("url: [host: ...] configuration value #{inspect(host)} for #{inspect(endpoint)} is invalid")384     │              ~385     │386     └─ lib/phoenix/endpoint/supervisor.ex:346:14: Phoenix.Endpoint.Supervisor.build_url/2387388    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 operator389    │390 46 │       <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix391    │                             ~392    │393    └─ lib/phoenix/naming.ex:46:29: Phoenix.Naming.unsuffix/2394395     warning: using single-quoted strings to represent charlists is deprecated.396     Use ~c"" if you indeed want a charlist or use "" instead.397     You may run "mix format --migrate" to change all single-quoted398     strings to use the ~c sigil and fix this warning.399     │400 411 │   @anno (if :erlang.system_info(:otp_release) >= '19' do401     │                                                  ~402     │403     └─ lib/phoenix/router.ex:411:50404405    warning: unused require Phoenix.Endpoint406    │407 19 │   require Phoenix.Endpoint408    │   ~409    │410    └─ lib/phoenix/endpoint/render_errors.ex:19:3411412    warning: using single-quoted strings to represent charlists is deprecated.413    Use ~c"" if you indeed want a charlist or use "" instead.414    You may run "mix format --migrate" to change all single-quoted415    strings to use the ~c sigil and fix this warning.416    │417  8 │   @anno (if :erlang.system_info(:otp_release) >= '19' do418    │                                                  ~419    │420    └─ lib/phoenix/router/helpers.ex:8:50421422    warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.423424    This error happens when you have function calls without parentheses inside keywords. For example:425426        function(arg, one: nested_call a, b, c)427        function(arg, one: if expr, do: :this, else: :that)428429    In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:430431        function(arg, one: if(expr, do: :this, else: :that))432        function(arg, one: nested_call(a, b, c))433434    Ambiguity found at:435    │436 71 │     unless actions -- supported_actions == [], do: raise ArgumentError, """437    │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~438    │439    └─ lib/phoenix/router/resource.ex:71440441     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead442     │443 734 │     Logger.warn fn -> "Ignoring unmatched topic \"#{topic}\" in #{inspect(handler)}" end444     │            ~445     │446     └─ lib/phoenix/socket.ex:734:12: Phoenix.Socket.encode_ignore/2447448    warning: unused require Phoenix.Endpoint449    │450  6 │   require Phoenix.Endpoint451    │   ~452    │453    └─ lib/phoenix/channel/server.ex:6:3454455     warning: unused require Phoenix.Endpoint456     │457 188 │   require Phoenix.Endpoint458     │   ~459     │460     └─ lib/phoenix/socket.ex:188:3461462    warning: unused require Logger463    │464 93 │   require Logger465    │   ~466    │467    └─ lib/phoenix/token.ex:93:3468469     warning: using single-quoted strings to represent charlists is deprecated.470     Use ~c"" if you indeed want a charlist or use "" instead.471     You may run "mix format --migrate" to change all single-quoted472     strings to use the ~c sigil and fix this warning.473     │474 178 │   @anno (if :erlang.system_info(:otp_release) >= '19' do475     │                                                  ~476     │477     └─ lib/phoenix/view.ex:178:50478479    warning: a struct for Plug.Conn is expected on struct update:480481        %Plug.Conn{conn | state: :sent}482483    but got type:484485        dynamic()486487    where "conn" was given the type:488489        # type: dynamic()490        # from: lib/phoenix/endpoint/render_errors.ex:57:17491        conn492493    when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"494495    type warning found at:496    │497 61 │         %Plug.Conn{conn | state: :sent}498    │         ~499    │500    └─ lib/phoenix/endpoint/render_errors.ex:61:9: Phoenix.Endpoint.RenderErrors.__catch__/5501502     warning: a struct for Plug.Conn is expected on struct update:503504         %Plug.Conn{conn | query_params: %{}, params: %{}}505506     but got type:507508         dynamic(%{..., params: %Plug.Conn.Unfetched{}})509510     where "conn" was given the types:511512         # type: dynamic(%{..., params: term()})513         # from: lib/phoenix/endpoint/render_errors.ex:124:17514         conn.params515516         # type: dynamic(%{..., params: %Plug.Conn.Unfetched{}})517         # from: lib/phoenix/endpoint/render_errors.ex:124:17518         conn.params519520     when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"521522     type warning found at:523     │524 125 │         %Plug.Conn.Unfetched{} -> %Plug.Conn{conn | query_params: %{}, params: %{}}525     │                                   ~526     │527     └─ lib/phoenix/endpoint/render_errors.ex:125:35: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1528529     warning: a struct for Plug.Conn is expected on struct update:530531         %Plug.Conn{conn | query_params: %{}, params: params}532533     but got type:534535         dynamic(%{..., params: not %Plug.Conn.Unfetched{}})536537     where "conn" was given the types:538539         # type: dynamic(%{..., params: term()})540         # from: lib/phoenix/endpoint/render_errors.ex:124:17541         conn.params542543         # type: dynamic(%{..., params: not %Plug.Conn.Unfetched{}})544         # from: lib/phoenix/endpoint/render_errors.ex:124:17545         conn.params546547     when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"548549     type warning found at:550     │551 126 │         params -> %Plug.Conn{conn | query_params: %{}, params: params}552     │                   ~553     │554     └─ lib/phoenix/endpoint/render_errors.ex:126:19: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1555556     warning: incompatible types given to socket_children/1:557558         socket_children(mod)559560     given types:561562         -dynamic(atom())-563564     but expected one of:565566         %{..., __sockets__: term()}567568     where "mod" was given the types:569570         # type: dynamic(atom() or binary())571         # from: lib/phoenix/endpoint/supervisor.ex:64:41572         defaults(otp_app, mod)573574         # type: dynamic(atom())575         # from: lib/phoenix/endpoint/supervisor.ex:68:16576         mod.init(:supervisor, env_conf)577578     type warning found at:579     │580 105 │       socket_children(mod) ++581     │       ~582     │583     └─ lib/phoenix/endpoint/supervisor.ex:105:7: Phoenix.Endpoint.Supervisor.init/1584585      warning: a struct for Plug.Conn is expected on struct update:586587          %Plug.Conn{conn | params: params}588589      but got type:590591          dynamic(%{..., params: map()})592593      where "conn" was given the type:594595          # type: dynamic(%{..., params: map()})596          # from: lib/phoenix/controller.ex:1040:17597          Map.get(conn.params, required_key)598599      when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"600601      type warning found at:602      │603 1047 │     %Plug.Conn{conn | params: params}604      │     ~605      │606      └─ lib/phoenix/controller.ex:1047:5: Phoenix.Controller.scrub_params/2607608Generated phoenix app609warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"610  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2611  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1612  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5613  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2614  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4615  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2616617==> phoenix_live_view618Compiling 22 files (.ex)619    warning: unused require Logger620    │621 25 │   require Logger622    │   ~623    │624    └─ lib/phoenix_live_view/socket.ex:25:3625626     warning: unused require Phoenix.ChannelTest627     │628 141 │   require Phoenix.ChannelTest629     │   ~630     │631     └─ lib/phoenix_live_view/test/live_view_test.ex:141:3632633     warning: unused require Phoenix.ConnTest634     │635 140 │   require Phoenix.ConnTest636     │   ~637     │638     └─ lib/phoenix_live_view/test/live_view_test.ex:140:3639640    warning: unused require Phoenix.ChannelTest641    │642  4 │   require Phoenix.ChannelTest643    │   ~644    │645    └─ lib/phoenix_live_view/test/upload_client.ex:4:3646647    warning: unused require Logger648    │649  6 │   require Logger650    │   ~651    │652    └─ lib/phoenix_live_view/upload_channel.ex:6:3653654     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:655656         %Phoenix.LiveView.Socket{657           socket658           | private: Map.put(socket.private, :phoenix_live_layout, {mod, template})659         }660661     but got type:662663         dynamic()664665     where "socket" was given the type:666667         # type: dynamic()668         # from: lib/phoenix_live_view/utils.ex:464:21669         socket670671     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"672673     type warning found at:674     │675 465 │     %Socket{socket | private: Map.put(socket.private, :phoenix_live_layout, {mod, template})}676     │     ~677     │678     └─ lib/phoenix_live_view/utils.ex:465:5: Phoenix.LiveView.Utils.do_mount_opt/3679680     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:681682         %Phoenix.LiveView.Socket{socket | private: Map.put(socket.private, :phoenix_live_layout, false)}683684     but got type:685686         dynamic()687688     where "socket" was given the type:689690         # type: dynamic()691         # from: lib/phoenix_live_view/utils.ex:468:21692         socket693694     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"695696     type warning found at:697     │698 469 │     %Socket{socket | private: Map.put(socket.private, :phoenix_live_layout, false)}699     │     ~700     │701     └─ lib/phoenix_live_view/utils.ex:469:5: Phoenix.LiveView.Utils.do_mount_opt/3702703     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:704705         %Phoenix.LiveView.Socket{706           socket707           | assigns: Map.merge(temp_assigns, socket.assigns),708             private: Map.put(socket.private, :temporary_assigns, temp_assigns)709         }710711     but got type:712713         dynamic()714715     where "socket" was given the type:716717         # type: dynamic()718         # from: lib/phoenix_live_view/utils.ex:478:21719         socket720721     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"722723     type warning found at:724     │725 485 │     %Socket{726     │     ~727     │728     └─ lib/phoenix_live_view/utils.ex:485:5: Phoenix.LiveView.Utils.do_mount_opt/3729730     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:731732         %Phoenix.LiveView.Socket{733           socket734           | assigns: %Phoenix.LiveView.Socket.AssignsNotInSocket{__assigns__: assigns}735         }736737     but got type:738739         dynamic(%{..., assigns: term(), changed: term()})740741     where "socket" was given the type:742743         # type: dynamic(%{..., assigns: term(), changed: term()})744         # from: lib/phoenix_live_view/utils.ex:496:61745         %{assigns: assigns, changed: changed} = socket746747     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"748749     type warning found at:750     │751 497 │     socket = %Socket{socket | assigns: %Socket.AssignsNotInSocket{__assigns__: assigns}}752     │              ~753     │754     └─ lib/phoenix_live_view/utils.ex:497:14: Phoenix.LiveView.Utils.render_assigns/1755756     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:757758         %Phoenix.LiveView.UploadEntry{entry | preflighted?: true}759760     but got type:761762         dynamic()763764     where "entry" was given the type:765766         # type: dynamic()767         # from: lib/phoenix_live_view/upload_config.ex:341:28768         entry <- conf.entries769770     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"771772     type warning found at:773     │774 341 │       | entries: for(entry <- conf.entries, do: %UploadEntry{entry | preflighted?: true})775     │                                                 ~776     │777     └─ lib/phoenix_live_view/upload_config.ex:341:49: Phoenix.LiveView.UploadConfig.mark_preflighted/1778779     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:780781         %Phoenix.LiveView.UploadEntry{entry | valid?: true, uuid: generate_uuid()}782783     but got type:784785         dynamic()786787     where "entry" was given the type:788789         # type: dynamic()790         # from: lib/phoenix_live_view/upload_config.ex:541:30791         entry792793     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"794795     type warning found at:796     │797 542 │     entry = %UploadEntry{entry | valid?: true, uuid: generate_uuid()}798     │             ~799     │800     └─ lib/phoenix_live_view/upload_config.ex:542:13: Phoenix.LiveView.UploadConfig.put_valid_entry/2801802     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:803804         %Phoenix.LiveView.UploadEntry{entry | valid?: false}805806     but got type:807808         dynamic()809810     where "entry" was given the type:811812         # type: dynamic()813         # from: lib/phoenix_live_view/upload_config.ex:554:32814         entry815816     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"817818     type warning found at:819     │820 555 │     entry = %UploadEntry{entry | valid?: false}821     │             ~822     │823     └─ lib/phoenix_live_view/upload_config.ex:555:13: Phoenix.LiveView.UploadConfig.put_invalid_entry/3824825    warning: Logger.disable/1 is deprecated. Use Logger.put_process_level(pid, :none) instead826    │827 56 │     Logger.disable(self())828    │            ~829    │830    └─ lib/phoenix_live_view/test/client_proxy.ex:56:12: Phoenix.LiveViewTest.ClientProxy.init/1831832     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:833834         %Phoenix.LiveView.UploadEntry{entry | cancelled?: true}835836     but got type:837838         dynamic()839840     where "entry" was given the type:841842         # type: dynamic()843         # from: lib/phoenix_live_view/upload_config.ex:638:42844         entry845846     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"847848     type warning found at:849     │850 638 │         update_entry(conf, entry.ref, fn entry -> %UploadEntry{entry | cancelled?: true} end)851     │                                                   ~852     │853     └─ lib/phoenix_live_view/upload_config.ex:638:51: Phoenix.LiveView.UploadConfig.cancel_entry/2854855     warning: a struct for Phoenix.LiveViewTest.ClientProxy is expected on struct update:856857         %Phoenix.LiveViewTest.ClientProxy{view | rendered: rendered}858859     but got type:860861         dynamic(%{..., rendered: term()})862863     where "view" was given the type:864865         # type: dynamic(%{..., rendered: term()})866         # from: lib/phoenix_live_view/test/client_proxy.ex:600:24867         Phoenix.LiveViewTest.DOM.merge_diff(view.rendered, diff)868869     when defining the variable "view", you must also pattern match on "%Phoenix.LiveViewTest.ClientProxy{}"870871     type warning found at:872     │873 601 │         new_view = %ClientProxy{view | rendered: rendered}874     │                    ~875     │876     └─ lib/phoenix_live_view/test/client_proxy.ex:601:20: Phoenix.LiveViewTest.ClientProxy.merge_rendered/3877878     warning: Plug.Conn.Query.decode_pair/2 is deprecated. Use decode_init/0, decode_each/2, and decode_done/2 instead879     │880 986 │       Plug.Conn.Query.decode_pair({name, DOM.attribute(selected, "value")}, acc)881     │                       ~882     │883     └─ lib/phoenix_live_view/test/client_proxy.ex:986:23: Phoenix.LiveViewTest.ClientProxy.form_defaults/3884     └─ lib/phoenix_live_view/test/client_proxy.ex:991:21: Phoenix.LiveViewTest.ClientProxy.form_defaults/3885     └─ lib/phoenix_live_view/test/client_proxy.ex:1001:27: Phoenix.LiveViewTest.ClientProxy.form_defaults/3886     └─ lib/phoenix_live_view/test/client_proxy.ex:1010:25: Phoenix.LiveViewTest.ClientProxy.form_defaults/3887888     warning: the following clause is redundant:889890         def to_iodata(%_{} = struct)891892     it has type:893894         dynamic(%Phoenix.LiveView.Rendered{})895896     previous clauses have already matched on the following types:897898         %Phoenix.LiveView.Rendered{}899900     │901 126 │     def to_iodata(%_{} = struct) do902     │         ~903     │904     └─ lib/phoenix_live_view/engine.ex:126:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/1905906     warning: the 1st pattern in clause will never match:907908         nil909910     because it is expected to receive type:911912         dynamic(%Phoenix.LiveView.Rendered{})913914     hint: defimpl for Phoenix.LiveView.Rendered requires its callbacks to match exclusively on %Phoenix.LiveView.Rendered{}915916     type warning found at:917     │918 130 │     def to_iodata(nil) do919     │     ~~~~~~~~~~~~~~~~~~~~~920     │921     └─ lib/phoenix_live_view/engine.ex:130: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/1922923     warning: the following clause is redundant:924925         def to_iodata(other)926927     it has type:928929         dynamic(%Phoenix.LiveView.Rendered{})930931     previous clauses have already matched on the following types:932933         %Phoenix.LiveView.Rendered{}934935     │936 134 │     def to_iodata(other) do937     │         ~938     │939     └─ lib/phoenix_live_view/engine.ex:134:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/1940941Generated phoenix_live_view app942warning: Phoenix now requires you to explicitly list which engine to use943for Phoenix JSON encoding. We recommend everyone to upgrade to944Jason by setting in your config/config.exs:945946    config :phoenix, :json_library, Jason947948And then adding {:jason, "~> 1.0"} as a dependency.949950If instead you would rather continue using Poison, then add to951your config/config.exs:952953    config :phoenix, :json_library, Poison954955  (phoenix 1.5.15) lib/phoenix.ex:38: Phoenix.start/2956  (kernel 11.0.4) application_master.erl:299: :application_master.start_it_old/4957958warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"959  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2960  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1961  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5962  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2963  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4964  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2965966==> phoenix_live_dashboard967Compiling 36 files (.ex)968    warning: using single-quoted strings to represent charlists is deprecated.969    Use ~c"" if you indeed want a charlist or use "" instead.970    You may run "mix format --migrate" to change all single-quoted971    strings to use the ~c sigil and fix this warning.972    │973 41 │     '#Port' ++ rest = :erlang.port_to_list(ref)974    │     ~975    │976    └─ lib/phoenix/live_dashboard/helpers.ex:41:5977978    warning: using single-quoted strings to represent charlists is deprecated.979    Use ~c"" if you indeed want a charlist or use "" instead.980    You may run "mix format --migrate" to change all single-quoted981    strings to use the ~c sigil and fix this warning.982    │983 49 │     '#Ref' ++ rest = :erlang.ref_to_list(ref)984    │     ~985    │986    └─ lib/phoenix/live_dashboard/helpers.ex:49:5987988warning: passing the @socket to live_component is no longer necessary, please remove the socket argument989  lib/phoenix/live_dashboard/pages/home_page.ex:176: Phoenix.LiveDashboard.HomePage.render/1990991warning: passing the @socket to live_component is no longer necessary, please remove the socket argument992  lib/phoenix/live_dashboard/pages/home_page.ex:184: Phoenix.LiveDashboard.HomePage.render/1993994warning: passing the @socket to live_component is no longer necessary, please remove the socket argument995  lib/phoenix/live_dashboard/pages/home_page.ex:192: Phoenix.LiveDashboard.HomePage.render/1996997warning: passing the @socket to live_component is no longer necessary, please remove the socket argument998  lib/phoenix/live_dashboard/pages/os_mon_page.ex:213: Phoenix.LiveDashboard.OSMonPage.render/19991000warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1001  lib/phoenix/live_dashboard/pages/os_mon_page.ex:235: Phoenix.LiveDashboard.OSMonPage.render/110021003     warning: using single-quoted strings to represent charlists is deprecated.1004     Use ~c"" if you indeed want a charlist or use "" instead.1005     You may run "mix format --migrate" to change all single-quoted1006     strings to use the ~c sigil and fix this warning.1007     │1008 397 │   @inet_ports ['tcp_inet', 'udp_inet', 'sctp_inet']1009     │                ~1010     │1011     └─ lib/phoenix/live_dashboard/system_info.ex:397:1610121013     warning: using single-quoted strings to represent charlists is deprecated.1014     Use ~c"" if you indeed want a charlist or use "" instead.1015     You may run "mix format --migrate" to change all single-quoted1016     strings to use the ~c sigil and fix this warning.1017     │1018 397 │   @inet_ports ['tcp_inet', 'udp_inet', 'sctp_inet']1019     │                            ~1020     │1021     └─ lib/phoenix/live_dashboard/system_info.ex:397:2810221023     warning: using single-quoted strings to represent charlists is deprecated.1024     Use ~c"" if you indeed want a charlist or use "" instead.1025     You may run "mix format --migrate" to change all single-quoted1026     strings to use the ~c sigil and fix this warning.1027     │1028 397 │   @inet_ports ['tcp_inet', 'udp_inet', 'sctp_inet']1029     │                                        ~1030     │1031     └─ lib/phoenix/live_dashboard/system_info.ex:397:4010321033     warning: using single-quoted strings to represent charlists is deprecated.1034     Use ~c"" if you indeed want a charlist or use "" instead.1035     You may run "mix format --migrate" to change all single-quoted1036     strings to use the ~c sigil and fix this warning.1037     │1038 543 │         [{'none', 0, 0}] -> []1039     │           ~1040     │1041     └─ lib/phoenix/live_dashboard/system_info.ex:543:1110421043warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1044  lib/phoenix/live_dashboard/page_live.ex:211: Phoenix.LiveDashboard.PageLive.render_page/310451046warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1047  lib/phoenix/live_dashboard/page_live.ex:236: Phoenix.LiveDashboard.PageLive.live_modal/310481049warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1050  lib/phoenix/live_dashboard/components/nav_bar_component.ex:142: Phoenix.LiveDashboard.NavBarComponent.render_content/310511052warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1053  lib/phoenix/live_dashboard/components/card_usage_component.ex:7: Phoenix.LiveDashboard.CardUsageComponent.render/110541055     warning: incompatible types given to Phoenix.LiveView.Helpers.__live_component__/3:10561057         Phoenix.LiveView.Helpers.__live_component__(1058           component.__live__(),1059           Phoenix.LiveDashboard.ModalComponent,1060           nil1061         )10621063     given types:10641065         dynamic(), -Phoenix.LiveDashboard.ModalComponent-, nil10661067     but expected one of:10681069         (1070           %{..., kind: :component, module: term()},1071           empty_list() or map() or non_empty_list(term(), term()),1072           term()1073         )10741075     where "component" (context Phoenix.LiveView.Helpers) was given the types:10761077         # type: dynamic(not %Phoenix.LiveView.Socket{})1078         # from: lib/phoenix/live_dashboard/page_live.ex:2361079         component10801081         # type: dynamic(atom())1082         # from: lib/phoenix/live_dashboard/page_live.ex:2361083         component.__live__()10841085     type warning found at:1086     │1087 236 │     live_component(socket, Phoenix.LiveDashboard.ModalComponent, modal_opts)1088     │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1089     │1090     └─ lib/phoenix/live_dashboard/page_live.ex:236: Phoenix.LiveDashboard.PageLive.live_modal/310911092     warning: the following clause will never match:10931094         %{__changed__: changed} when track_changes? ->10951096     because it attempts to match on the result of:10971098         assigns10991100     which has type:11011102         dynamic(%{text: term()})11031104     where "track_changes?" (context Phoenix.LiveView.Engine) was given the type:11051106         # type: dynamic(true)1107         # from: lib/phoenix/live_dashboard/page_live.ex:3121108         track_changes?11091110     type warning found at:1111     │1112 312 │     ~L"""1113     │     ~~~~~1114     │1115     └─ lib/phoenix/live_dashboard/page_live.ex:312: Phoenix.LiveDashboard.PageLive.maybe_link/311161117     warning: the following clause will never match:11181119         %{__changed__: changed} when track_changes? ->11201121     because it attempts to match on the result of:11221123         assigns11241125     which has type:11261127         dynamic(%{more_info_url: term(), text: term()})11281129     where "track_changes?" (context Phoenix.LiveView.Engine) was given the type:11301131         # type: dynamic(true)1132         # from: lib/phoenix/live_dashboard/page_live.ex:3221133         track_changes?11341135     type warning found at:1136     │1137 322 │     ~L"""1138     │     ~~~~~1139     │1140     └─ lib/phoenix/live_dashboard/page_live.ex:322: Phoenix.LiveDashboard.PageLive.maybe_link/311411142     warning: the following clause will never match:11431144         %{__changed__: changed} when track_changes? ->11451146     because it attempts to match on the result of:11471148         assigns11491150     which has type:11511152         dynamic(%{checked_param: binary()})11531154     where "track_changes?" (context Phoenix.LiveView.Engine) was given the type:11551156         # type: dynamic(true)1157         # from: lib/phoenix/live_dashboard/pages/request_logger_page.ex:1781158         track_changes?11591160     type warning found at:1161     │1162 178 │     ~L"""1163     │     ~~~~~1164     │1165     └─ lib/phoenix/live_dashboard/pages/request_logger_page.ex:178: Phoenix.LiveDashboard.RequestLoggerPage.autoscroll_checkbox/111661167     warning: incompatible types given to Phoenix.LiveView.Helpers.__live_component__/3:11681169         Phoenix.LiveView.Helpers.__live_component__(1170           component.__live__(),1171           Phoenix.LiveDashboard.ColorBarComponent,1172           nil1173         )11741175     given types:11761177         dynamic(), -Phoenix.LiveDashboard.ColorBarComponent-, nil11781179     but expected one of:11801181         (1182           %{..., kind: :component, module: term()},1183           empty_list() or map() or non_empty_list(term(), term()),1184           term()1185         )11861187     where "component" (context Phoenix.LiveView.Helpers) was given the types:11881189         # type: dynamic(not %Phoenix.LiveView.Socket{})1190         # from: lib/phoenix/live_dashboard/pages/home_page.ex:2061191         component11921193         # type: dynamic(atom())1194         # from: lib/phoenix/live_dashboard/pages/home_page.ex:2061195         component.__live__()11961197     type warning found at:1198     │1199 206 │             <%= live_component @socket, ColorBarComponent, data: memory_usage_sections_percent(@system_usage.memory, @system_usage.memory.total), csp_nonces: @csp_nonces, dom_id: "system_usage_memory_total" %>1200     │             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1201     │1202     └─ lib/phoenix/live_dashboard/pages/home_page.ex:206: Phoenix.LiveDashboard.HomePage.render/112031204    warning: incompatible types given to Phoenix.LiveView.Helpers.__live_component__/3:12051206        Phoenix.LiveView.Helpers.__live_component__(1207          component.__live__(),1208          Phoenix.LiveDashboard.ChartComponent,1209          nil1210        )12111212    given types:12131214        dynamic(), -Phoenix.LiveDashboard.ChartComponent-, nil12151216    but expected one of:12171218        (1219          %{..., kind: :component, module: term()},1220          empty_list() or map() or non_empty_list(term(), term()),1221          term()1222        )12231224    where "component" (context Phoenix.LiveView.Helpers) was given the types:12251226        # type: dynamic(not %Phoenix.LiveView.Socket{})1227        # from: lib/phoenix/live_dashboard/pages/metrics_page.ex:761228        component12291230        # type: dynamic(atom())1231        # from: lib/phoenix/live_dashboard/pages/metrics_page.ex:761232        component.__live__()12331234    type warning found at:1235    │1236 76 │           <%= live_component @socket, ChartComponent, id: id, metric: metric %>1237    │           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1238    │1239    └─ lib/phoenix/live_dashboard/pages/metrics_page.ex:76: Phoenix.LiveDashboard.MetricsPage.render_metrics/112401241     warning: incompatible types given to Phoenix.LiveView.Helpers.__live_component__/3:12421243         Phoenix.LiveView.Helpers.__live_component__(1244           component.__live__(),1245           Phoenix.LiveDashboard.ColorBarComponent,1246           nil1247         )12481249     given types:12501251         dynamic(), -Phoenix.LiveDashboard.ColorBarComponent-, nil12521253     but expected one of:12541255         (1256           %{..., kind: :component, module: term()},1257           empty_list() or map() or non_empty_list(term(), term()),1258           term()1259         )12601261     where "component" (context Phoenix.LiveView.Helpers) was given the types:12621263         # type: dynamic(not %Phoenix.LiveView.Socket{})1264         # from: lib/phoenix/live_dashboard/pages/os_mon_page.ex:1911265         component12661267         # type: dynamic(atom())1268         # from: lib/phoenix/live_dashboard/pages/os_mon_page.ex:1911269         component.__live__()12701271     type warning found at:1272     │1273 191 │                       <%= live_component @socket, ColorBarComponent, dom_id: "cpu-#{num_cpu}", data: cpu_usage_sections(usage), title: "CPU #{num_cpu+1}", csp_nonces: @csp_nonces %>1274     │                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1275     │1276     └─ lib/phoenix/live_dashboard/pages/os_mon_page.ex:191: Phoenix.LiveDashboard.OSMonPage.render/112771278    warning: Logger.add_backend/1 is deprecated. Use LoggerBackends.add/2 from :logger_backends dependency1279    │1280  8 │     Logger.add_backend(Phoenix.LiveDashboard.LoggerPubSubBackend)1281    │            ~1282    │1283    └─ lib/phoenix/live_dashboard/application.ex:8:12: Phoenix.LiveDashboard.Application.start/212841285     warning: the following clause will never match:12861287         %{__changed__: changed} when track_changes? ->12881289     because it attempts to match on the result of:12901291         assigns12921293     which has type:12941295         dynamic(%{block: term()})12961297     where "track_changes?" (context Phoenix.LiveView.Engine) was given the type:12981299         # type: dynamic(true)1300         # from: lib/phoenix/live_dashboard/helpers.ex:2081301         track_changes?13021303     type warning found at:1304     │1305 208 │     ~L"""1306     │     ~~~~~1307     │1308     └─ lib/phoenix/live_dashboard/helpers.ex:208: Phoenix.LiveDashboard.Helpers.hint/113091310Generated phoenix_live_dashboard app1311==> ecto_network1312Compiling 4 files (.ex)1313    warning: this clause in cond will always match:13141315        address_netmask(inet.address)13161317    since it has type:13181319        integer()13201321    where "inet" was given the type:13221323        # type: dynamic(%Postgrex.INET{})1324        # from: lib/ecto_network/inet.ex:53:291325        %Postgrex.INET{} = inet13261327    type warning found at:1328    │1329 57 │         address_netmask(inet.address) -> %{inet | netmask: address_netmask(inet.address)}1330    │                                       ~1331    │1332    └─ lib/ecto_network/inet.ex:57:39: EctoNetwork.INET.load/113331334Generated ecto_network app1335warning: the :gettext compiler is no longer required in your mix.exs.13361337Please find the following line in your mix.exs and remove the :gettext entry:13381339    compilers: [..., :gettext, ...] ++ Mix.compilers(),13401341  (gettext 0.26.2) lib/mix/tasks/compile.gettext.ex:5: Mix.Tasks.Compile.Gettext.run/11342  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51343  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21344  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41345  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/21346  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/513471348==> mppm1349Compiling 76 files (.ex)1350    warning: an expression is always required on the right side of ->. Please provide a value after ->1351    │1352 48 │         _ ->1353    │           ~1354    │1355    └─ lib/mppm/application.ex:48:1113561357    warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead1358    │1359  5 │   @root_path Application.get_env(:mppm, :game_servers_root_path)1360    │                          ~1361    │1362    └─ lib/mppm/application.ex:5:26: Mppm.Application (module)13631364    warning: binary construction will fail because of a type mismatch1365    │1366 63 │       {:ok, _} = File.cp_r("./priv/default_tracks/", @root_path<>"/UserData/Maps/MX", fn _, _ -> false end)1367    │       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1368    │1369    └─ lib/mppm/application.ex:6313701371    warning: binary construction will fail because of a type mismatch1372    │1373 61 │     if {:ok, []} == File.ls(@root_path<>"/UserData/Maps/MX") do1374    │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1375    │1376    └─ lib/mppm/application.ex:6113771378    warning: binary construction will fail because of a type mismatch1379    │1380 53 │     try do Port.open({:spawn_executable, @root_path<>"/TrackmaniaServer"}, [:binary, args: ["/nodaemon"]])1381    │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1382    │1383    └─ lib/mppm/application.ex:5313841385    warning: an expression is always required on the right side of ->. Please provide a value after ->1386    │1387 99 │         _unhandled_message ->1388    │                            ~1389    │1390    └─ lib/mppm/broker/receiver_server.ex:99:2813911392    warning: the variable "size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1393    │1394 55 │         <<message::binary-size(size), next_message::binary>> = msg1395    │                                ~1396    │1397    └─ lib/mppm/broker/receiver_server.ex:55:32: Mppm.Broker.ReceiverServer.parse_new_packet/213981399    warning: the variable "missing_bytes" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1400    │1401 75 │         <<end_of_message::binary-size(missing_bytes), next_message::binary>> = binary1402    │                                       ~1403    │1404    └─ lib/mppm/broker/receiver_server.ex:75:39: Mppm.Broker.ReceiverServer.parse_message_next_packet/314051406     warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.14071408     This error happens when you have function calls without parentheses inside keywords. For example:14091410         function(arg, one: nested_call a, b, c)1411         function(arg, one: if expr, do: :this, else: :that)14121413     In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:14141415         function(arg, one: if(expr, do: :this, else: :that))1416         function(arg, one: nested_call(a, b, c))14171418     Ambiguity found at:1419     │1420 116 │     from u in Mppm.User, where: u.uuid == ^uuid1421     │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1422     │1423     └─ lib/mppm/data/user.ex:11614241425     warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.14261427     This error happens when you have function calls without parentheses inside keywords. For example:14281429         function(arg, one: nested_call a, b, c)1430         function(arg, one: if expr, do: :this, else: :that)14311432     In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:14331434         function(arg, one: if(expr, do: :this, else: :that))1435         function(arg, one: nested_call(a, b, c))14361437     Ambiguity found at:1438     │1439 119 │     from u in Mppm.User, where: u.login == ^login1440     │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1441     │1442     └─ lib/mppm/data/user.ex:11914431444    warning: variable "nickname" is unused (if the variable is not meant to be used, prefix it with an underscore)1445    │1446 15 │   def new_changeset(%User{} = user, %{uuid: uuid, nickname: nickname} = data)1447    │                                                             ~~~~~~~~1448    │1449    └─ lib/mppm/data/user.ex:15:61: Mppm.User.new_changeset/214501451    warning: variable "nickname" is unused (if the variable is not meant to be used, prefix it with an underscore)1452    │1453 22 │   def new_changeset(%User{} = user, %{login: login, nickname: nickname} = data)1454    │                                                               ~~~~~~~~1455    │1456    └─ lib/mppm/data/user.ex:22:63: Mppm.User.new_changeset/214571458    warning: using single-quoted strings to represent charlists is deprecated.1459    Use ~c"" if you indeed want a charlist or use "" instead.1460    You may run "mix format --migrate" to change all single-quoted1461    strings to use the ~c sigil and fix this warning.1462    │1463 32 │     res = :os.cmd('ss -lpn | grep "pid=#{pid}" | awk {\'print$5\'} | cut -d: -f2')1464    │                   ~1465    │1466    └─ lib/mppm/game_server/server.ex:32:1914671468    warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead1469    │1470  7 │   @root_path Application.get_env(:mppm, :game_servers_root_path)1471    │                          ~1472    │1473    └─ lib/mppm/game_server/server.ex:7:26: Mppm.GameServer.Server (module)14741475    warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead1476    │1477  8 │   @config Application.get_env(:mppm, Mppm.Trackmania)1478    │                       ~1479    │1480    └─ lib/mppm/game_server/server.ex:8:23: Mppm.GameServer.Server (module)14811482    warning: using single-quoted strings to represent charlists is deprecated.1483    Use ~c"" if you indeed want a charlist or use "" instead.1484    You may run "mix format --migrate" to change all single-quoted1485    strings to use the ~c sigil and fix this warning.1486    │1487 31 │   @trackmania 'TrackmaniaServer'1488    │               ~1489    │1490    └─ lib/mppm/game_server/starter.ex:31:1514911492    warning: using single-quoted strings to represent charlists is deprecated.1493    Use ~c"" if you indeed want a charlist or use "" instead.1494    You may run "mix format --migrate" to change all single-quoted1495    strings to use the ~c sigil and fix this warning.1496    │1497 61 │     :os.cmd('ps -aux | grep ' ++ @trackmania)1498    │             ~1499    │1500    └─ lib/mppm/game_server/starter.ex:61:1315011502    warning: using single-quoted strings to represent charlists is deprecated.1503    Use ~c"" if you indeed want a charlist or use "" instead.1504    You may run "mix format --migrate" to change all single-quoted1505    strings to use the ~c sigil and fix this warning.1506    │1507 75 │       :os.cmd('netstat -antp | grep #{pid}/ | awk \'{print $4}\'')1508    │               ~1509    │1510    └─ lib/mppm/game_server/starter.ex:75:1515111512    warning: using single-quoted strings to represent charlists is deprecated.1513    Use ~c"" if you indeed want a charlist or use "" instead.1514    You may run "mix format --migrate" to change all single-quoted1515    strings to use the ~c sigil and fix this warning.1516    │1517 93 │     :os.cmd('ps -aux | grep '++@trackmania)1518    │             ~1519    │1520    └─ lib/mppm/game_server/starter.ex:93:1315211522     warning: variable "ss" is unused (if the variable is not meant to be used, prefix it with an underscore)1523     │1524 153 │   def handle_cast({:relink_orphan_process, {login, pid, xmlrpc_port} = ss}, state) do1525     │                                                                        ~~1526     │1527     └─ lib/mppm/game_server/server.ex:153:72: Mppm.GameServer.Server.handle_cast/215281529     warning: using single-quoted strings to represent charlists is deprecated.1530     Use ~c"" if you indeed want a charlist or use "" instead.1531     You may run "mix format --migrate" to change all single-quoted1532     strings to use the ~c sigil and fix this warning.1533     │1534 176 │         {:name, [], ['SuperAdmin']},1535     │                      ~1536     │1537     └─ lib/mppm/server_config.ex:176:2215381539     warning: using single-quoted strings to represent charlists is deprecated.1540     Use ~c"" if you indeed want a charlist or use "" instead.1541     You may run "mix format --migrate" to change all single-quoted1542     strings to use the ~c sigil and fix this warning.1543     │1544 180 │         {:name, [], ['Admin']},1545     │                      ~1546     │1547     └─ lib/mppm/server_config.ex:180:2215481549     warning: using single-quoted strings to represent charlists is deprecated.1550     Use ~c"" if you indeed want a charlist or use "" instead.1551     You may run "mix format --migrate" to change all single-quoted1552     strings to use the ~c sigil and fix this warning.1553     │1554 184 │         {:name, [], ['User']},1555     │                      ~1556     │1557     └─ lib/mppm/server_config.ex:184:2215581559     warning: using single-quoted strings to represent charlists is deprecated.1560     Use ~c"" if you indeed want a charlist or use "" instead.1561     You may run "mix format --migrate" to change all single-quoted1562     strings to use the ~c sigil and fix this warning.1563     │1564 356 │   defp charlist(true), do: ['True']1565     │                             ~1566     │1567     └─ lib/mppm/server_config.ex:356:2915681569     warning: using single-quoted strings to represent charlists is deprecated.1570     Use ~c"" if you indeed want a charlist or use "" instead.1571     You may run "mix format --migrate" to change all single-quoted1572     strings to use the ~c sigil and fix this warning.1573     │1574 357 │   defp charlist(false), do: ['False']1575     │                              ~1576     │1577     └─ lib/mppm/server_config.ex:357:3015781579     warning: using single-quoted strings to represent charlists is deprecated.1580     Use ~c"" if you indeed want a charlist or use "" instead.1581     You may run "mix format --migrate" to change all single-quoted1582     strings to use the ~c sigil and fix this warning.1583     │1584 369 │     'ls #{@root_path}UserData/Packs/'1585     │     ~1586     │1587     └─ lib/mppm/server_config.ex:369:515881589     warning: using single-quoted strings to represent charlists is deprecated.1590     Use ~c"" if you indeed want a charlist or use "" instead.1591     You may run "mix format --migrate" to change all single-quoted1592     strings to use the ~c sigil and fix this warning.1593     │1594 379 │     'ls /opt/mppm/'1595     │     ~1596     │1597     └─ lib/mppm/server_config.ex:379:515981599    warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead1600    │1601 15 │   @root_path Application.get_env(:mppm, :game_servers_root_path)1602    │                          ~1603    │1604    └─ lib/mppm/server_config.ex:15:26: Mppm.ServerConfig (module)160516061607== Compilation error in file lib/mppm/server_config.ex ==1608** (ArgumentError) lib file xmerl/include/xmerl.hrl could not be found1609    (elixir 1.20.3) lib/record/extractor.ex:45: Record.Extractor.from_lib_file/11610    (elixir 1.20.3) lib/record/extractor.ex:22: Record.Extractor.from_or_from_lib_file/11611    (elixir 1.20.3) lib/record/extractor.ex:9: Record.Extractor.extract/21612    lib/mppm/server_config.ex:10: (module)1613could not compile dependency :mppm, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile mppm --force", update it with "mix deps.update mppm" or clean it with "mix deps.clean mppm"