mishka_social

Build log

host

mishka_social 0.0.2 · fail · run mishka_social-0.0.2-1791002771048
1570 of 1570 lines
1Resolving Hex dependencies...2Resolution completed in 0.472s3Unchanged:4  castore 0.1.225  circular_buffer 1.1.06  connection 1.1.07  db_connection 2.10.28  decimal 2.4.1 VULNERABLE!9    EEF-CVE-2026-32686 (MEDIUM)10    aka: CVE-2026-32686, GHSA-rhv4-8758-jx7v11    Unbounded exponent in decimal enables unauthenticated DoS12    https://osv.dev/vulnerability/EEF-CVE-2026-3268613  ecto 3.11.214  ecto_enum 1.4.015  ecto_sql 3.11.316  elixir_make 0.10.017  ets 0.9.018  finch 0.13.019  gettext 0.20.020  hpax 1.1.021  interactive_cmd 0.1.422  jason 1.4.523  mime 2.0.724  mint 1.11.025  mishka_developer_tools 0.0.826  mishka_installer 0.0.427  mishka_social 0.0.228  nerves 2.0.0-pre.229  nerves_discovery 0.1.530  nerves_logging 0.2.431  nerves_runtime 0.13.1332  nerves_system_bbb 2.30.233  nerves_system_br 1.34.434  nerves_system_mangopi_mq_pro 0.17.235  nerves_system_qemu_aarch64 0.4.236  nerves_system_rpi0 2.1.237  nerves_system_rpi4 2.1.238  nerves_system_rpi5 2.1.239  nerves_system_trellis 0.5.040  nerves_system_x86_64 1.34.241  nerves_toolchain_aarch64_nerves_linux_gnu 15.3.142  nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.143  nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.144  nerves_toolchain_riscv64_nerves_linux_gnu 15.3.145  nerves_toolchain_x86_64_nerves_linux_musl 15.3.146  nerves_uevent 0.1.747  nimble_options 0.4.048  nimble_pool 0.2.649  oauth2 2.1.150  oban 2.19.451  phoenix 1.7.2452  phoenix_html 3.3.453  phoenix_live_view 0.17.14 VULNERABLE!54    EEF-CVE-2026-64941 (LOW)55    aka: CVE-2026-64941, GHSA-36m4-rm57-3prf56    Open redirect in Phoenix.LiveView.validate_local_url!/2 via ASCII tab, LF and CR57    https://osv.dev/vulnerability/EEF-CVE-2026-6494158  phoenix_pubsub 2.3.059  phoenix_template 1.1.060  plug 1.20.361  plug_crypto 2.2.062  postgrex 0.16.5 VULNERABLE!63    EEF-CVE-2026-32687 (HIGH)64    aka: CVE-2026-32687, GHSA-r73h-97w8-m54h65    SQL injection via channel name in Postgrex.Notifications.listen/3 and unlisten/366    https://osv.dev/vulnerability/EEF-CVE-2026-326876768    EEF-CVE-2026-58225 (LOW)69    aka: CVE-2026-58225, GHSA-4mw9-4qgj-m97w70    SQL injection via unescaped dollar-quote in Postgrex.Notifications reconnect replay causes notification denial of service71    https://osv.dev/vulnerability/EEF-CVE-2026-5822572  property_table 0.3.473  ring_logger 0.11.774  sourceror 0.11.275  tablet 0.3.376  telemetry 1.4.277  tesla 1.21.378  toolshed 0.5.079  uboot_env 1.0.280  ueberauth 0.7.081  ueberauth_github 0.8.382  ueberauth_google 0.10.183  websock 0.5.384  websock_adapter 0.5.985Found packages with security advisories, see above for details86All dependencies have been fetched87==> nimble_options88Compiling 3 files (.ex)89Generated nimble_options app90==> gettext91warning: in order to compile .yrl files, you must add "compilers: [:yecc] ++ Mix.compilers()" to the "def project" section of gettext's mix.exs92Compiling 1 file (.yrl)93Compiling 1 file (.erl)94Compiling 21 files (.ex)95     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 156 │   defp parse_error_reason('syntax error before: ' = prefix, "<<" <> rest),101     │                           ~102     │103     └─ lib/gettext/po/parser.ex:156:27104105     warning: using single-quoted strings to represent charlists is deprecated.106     Use ~c"" if you indeed want a charlist or use "" instead.107     You may run "mix format --migrate" to change all single-quoted108     strings to use the ~c sigil and fix this warning.109     │110 149 │     msg = :io_lib.format('unexpected token: "~ts" (codepoint U+~4.16.0B)', [[char], char])111     │                          ~112     │113     └─ lib/gettext/po/tokenizer.ex:149:26114115     warning: using single-quoted strings to represent charlists is deprecated.116     Use ~c"" if you indeed want a charlist or use "" instead.117     You may run "mix format --migrate" to change all single-quoted118     strings to use the ~c sigil and fix this warning.119     │120 177 │   defp tokenize_plural_form(<<digit, rest::binary>>, acc) when digit in '0123456789' do121     │                                                                         ~122     │123     └─ lib/gettext/po/tokenizer.ex:177:73124125     warning: Kernel.ParallelCompiler.async/1 is deprecated. Use `pmap/2` instead126     │127 430 │               Kernel.ParallelCompiler.async(fn ->128     │                                       ~129     │130     └─ lib/gettext/compiler.ex:430:39: Gettext.Compiler.compile_po_files/3131132Generated gettext app133warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"134  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2135  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1136  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5137  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2138  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4139  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2140141==> castore142Compiling 1 file (.ex)143Generated castore app144==> mint145Compiling 1 file (.erl)146Compiling 21 files (.ex)147Generated mint app148==> sourceror149warning: in order to compile .yrl files, you must add "compilers: [:yecc] ++ Mix.compilers()" to the "def project" section of sourceror's mix.exs150Compiling 1 file (.yrl)151Compiling 5 files (.erl)152Compiling 12 files (.ex)153    warning: using single-quoted strings to represent charlists is deprecated.154    Use ~c"" if you indeed want a charlist or use "" instead.155    You may run "mix format --migrate" to change all single-quoted156    strings to use the ~c sigil and fix this warning.157    │158 53 │   defp next_eol_count('\s' ++ rest, count), do: next_eol_count(rest, count)159    │                       ~160    │161    └─ lib/sourceror/code.ex:53:23162163    warning: using single-quoted strings to represent charlists is deprecated.164    Use ~c"" if you indeed want a charlist or use "" instead.165    You may run "mix format --migrate" to change all single-quoted166    strings to use the ~c sigil and fix this warning.167    │168 54 │   defp next_eol_count('\t' ++ rest, count), do: next_eol_count(rest, count)169    │                       ~170    │171    └─ lib/sourceror/code.ex:54:23172173    warning: using single-quoted strings to represent charlists is deprecated.174    Use ~c"" if you indeed want a charlist or use "" instead.175    You may run "mix format --migrate" to change all single-quoted176    strings to use the ~c sigil and fix this warning.177    │178 55 │   defp next_eol_count('\n' ++ rest, count), do: next_eol_count(rest, count + 1)179    │                       ~180    │181    └─ lib/sourceror/code.ex:55:23182183    warning: using single-quoted strings to represent charlists is deprecated.184    Use ~c"" if you indeed want a charlist or use "" instead.185    You may run "mix format --migrate" to change all single-quoted186    strings to use the ~c sigil and fix this warning.187    │188 56 │   defp next_eol_count('\r\n' ++ rest, count), do: next_eol_count(rest, count + 1)189    │                       ~190    │191    └─ lib/sourceror/code.ex:56:23192193warning: 1..-2 has a default step of -1, please write 1..-2//-1 instead194  lib/sourceror.ex:206: Sourceror.to_string/2195196     warning: using single-quoted strings to represent charlists is deprecated.197     Use ~c"" if you indeed want a charlist or use "" instead.198     You may run "mix format --migrate" to change all single-quoted199     strings to use the ~c sigil and fix this warning.200     │201 583 │       'Elixir.' ++ _ -> false202     │       ~203     │204     └─ lib/sourceror/code/normalizer.ex:583:7205206      warning: using single-quoted strings to represent charlists is deprecated.207      Use ~c"" if you indeed want a charlist or use "" instead.208      You may run "mix format --migrate" to change all single-quoted209      strings to use the ~c sigil and fix this warning.210      │211 1594 │         |> Enum.intersperse('_')212      │                             ~213      │214      └─ lib/sourceror/code/formatter.ex:1594:29215216    warning: using single-quoted strings to represent charlists is deprecated.217    Use ~c"" if you indeed want a charlist or use "" instead.218    You may run "mix format --migrate" to change all single-quoted219    strings to use the ~c sigil and fix this warning.220    │221 98 │   def valid_alias?('Elixir' ++ rest), do: valid_alias_piece?(rest)222    │                    ~223    │224    └─ lib/sourceror/identifier.ex:98:20225226Generated sourceror app227==> ecto228Compiling 56 files (.ex)229     warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead230     │231 297 │   @spec insert(232     │   ~~~~~~~~~~~~~233     │234     └─ lib/ecto/multi.ex:297: Ecto.Multi (module)235236     warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead237     │238 338 │   @spec update(t, name, Changeset.t() | fun(Changeset.t()), Keyword.t()) :: t239     │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~240     │241     └─ lib/ecto/multi.ex:338: Ecto.Multi (module)242243     warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead244     │245 371 │   @spec insert_or_update(t, name, Changeset.t() | fun(Changeset.t()), Keyword.t()) :: t246     │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~247     │248     └─ lib/ecto/multi.ex:371: Ecto.Multi (module)249250     warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead251     │252 417 │   @spec delete(253     │   ~~~~~~~~~~~~~254     │255     └─ lib/ecto/multi.ex:417: Ecto.Multi (module)256257     warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead258     │259 451 │   @spec one(260     │   ~~~~~~~~~~261     │262     └─ lib/ecto/multi.ex:451: Ecto.Multi (module)263264     warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead265     │266 482 │   @spec all(267     │   ~~~~~~~~~~268     │269     └─ lib/ecto/multi.ex:482: Ecto.Multi (module)270271     warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead272     │273 513 │   @spec exists?(274     │   ~~~~~~~~~~~~~~275     │276     └─ lib/ecto/multi.ex:513: Ecto.Multi (module)277278     warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead279     │280 623 │   @spec insert_all(281     │   ~~~~~~~~~~~~~~~~~282     │283     └─ lib/ecto/multi.ex:623: Ecto.Multi (module)284285     warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead286     │287 667 │   @spec update_all(288     │   ~~~~~~~~~~~~~~~~~289     │290     └─ lib/ecto/multi.ex:667: Ecto.Multi (module)291292     warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead293     │294 712 │   @spec delete_all(t, name, Ecto.Queryable.t() | fun(Ecto.Queryable.t()), Keyword.t()) :: t295     │   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~296     │297     └─ lib/ecto/multi.ex:712: Ecto.Multi (module)298299     warning: BadStructError.exception/1 is undefined (module BadStructError is not available or is yet to be defined). Make sure the module name is correct and has been specified in full (or that an alias has been defined)300     │301 347 │         raise BadStructError, struct: struct, term: data302     │         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~303     │304     └─ lib/ecto/repo/queryable.ex:347: Ecto.Repo.Queryable.process/4305306Generated ecto app307==> ueberauth308Compiling 9 files (.ex)309Generated ueberauth app310warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"311  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2312  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1313  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5314  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2315  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4316  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2317318==> postgrex319Compiling 64 files (.ex)320    warning: the variable "positions_bytes" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator321    │322 52 │     <<positions::binary-size(positions_bytes), remaining_data::binary>> = rest323    │                              ~324    │325    └─ lib/postgrex/extensions/tsvector.ex:52:30: Postgrex.Extensions.TSVector.decode_tsvector_values/1326327    warning: the variable "rest_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator328    │329 98 │           <<data::size(rest_size)>> = rest330    │                        ~331    │332    └─ lib/postgrex/messages.ex:98:24: Postgrex.Messages.parse/3333334    warning: unused require Postgrex.Messages335    │336 55 │   require Postgrex.Messages337    │   ~338    │339    └─ lib/postgrex/query.ex:55:3340341      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 operator342      │343 3201 │       <<body::binary(size), rest::binary>> ->344      │                      ~345      │346      └─ lib/postgrex/protocol.ex:3201:22: Postgrex.Protocol.msg_decode/1347348    warning: the variable "last_pos" (context Postgrex.Extensions.BitString) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator349    │350 16 │         <<binary::binary-size(last_pos), last::bits>> = val351    │         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~352    │353    └─ lib/postgrex/extensions/bit_string.ex:16: Postgrex.DefaultTypes."Elixir.Postgrex.Extensions.BitString"/1354355      warning: the following clause will never match:356357          {:error, %Postgrex.Error{} = err, s, buffer} ->358359      because it attempts to match on the result of:360361          msg_send(%{s | buffer: nil}, msgs, buffer)362363      which has type:364365          dynamic(:ok or {:disconnect, term(), term()})366367      type warning found at:368      │369 1128 │       {:error, %Postgrex.Error{} = err, s, buffer} ->370      │       ~371      │372      └─ lib/postgrex/protocol.ex:1128:7: Postgrex.Protocol.handle_simple/3373374      warning: the following clause will never match:375376          {:error, %Postgrex.Error{} = err, s, buffer} ->377378      because it attempts to match on the result of:379380          msg_send(%{s | buffer: nil}, msgs, buffer)381382      which has type:383384          dynamic(:ok or {:disconnect, term(), term()})385386      type warning found at:387      │388 1238 │       {:error, %Postgrex.Error{} = err, s, buffer} ->389      │       ~390      │391      └─ lib/postgrex/protocol.ex:1238:7: Postgrex.Protocol.handle_streaming/2392393      warning: a struct for Postgrex.Query is expected on struct update:394395          %Postgrex.Query{396            query397            | param_oids: param_oids,398              param_formats: param_formats,399              param_types: param_types400          }401402      but got type:403404          dynamic()405406      where "query" was given the type:407408          # type: dynamic()409          # from: lib/postgrex/protocol.ex:1637:41410          query411412      when defining the variable "query", you must also pattern match on "%Postgrex.Query{}"413414      type warning found at:415      │416 1640 │       query = %Query{417      │               ~418      │419      └─ lib/postgrex/protocol.ex:1640:15: Postgrex.Protocol.describe_params/3420421      warning: a struct for Postgrex.Query is expected on struct update:422423          %Postgrex.Query{424            query425            | ref: make_ref(),426              types: types,427              columns: nil,428              result_oids: nil,429              result_formats: [],430              result_types: nil431          }432433      but got type:434435          dynamic()436437      where "query" was given the type:438439          # type: dynamic()440          # from: lib/postgrex/protocol.ex:1668:41441          query442443      when defining the variable "query", you must also pattern match on "%Postgrex.Query{}"444445      type warning found at:446      │447 1669 │     query = %Query{448      │             ~449      │450      └─ lib/postgrex/protocol.ex:1669:13: Postgrex.Protocol.describe_result/4451452      warning: a struct for Postgrex.Query is expected on struct update:453454          %Postgrex.Query{455            query456            | ref: make_ref(),457              types: types,458              columns: columns,459              result_oids: result_oids,460              result_formats: result_formats,461              result_types: result_types462          }463464      but got type:465466          dynamic()467468      where "query" was given the type:469470          # type: dynamic()471          # from: lib/postgrex/protocol.ex:1682:41472          query473474      when defining the variable "query", you must also pattern match on "%Postgrex.Query{}"475476      type warning found at:477      │478 1685 │       query = %Query{479      │               ~480      │481      └─ lib/postgrex/protocol.ex:1685:15: Postgrex.Protocol.describe_result/4482483      warning: the following clause will never match:484485          {:error, %Postgrex.Error{} = err, s, buffer} ->486487      because it attempts to match on the result of:488489          msg_send(%{s | buffer: nil}, msgs, buffer)490491      which has type:492493          dynamic(:ok or {:disconnect, term(), term()})494495      type warning found at:496      │497 2865 │       {:error, %Postgrex.Error{} = err, s, buffer} ->498      │       ~499      │500      └─ lib/postgrex/protocol.ex:2865:7: Postgrex.Protocol.handle_transaction/3501502Generated postgrex app503warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"504  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2505  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1506  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5507  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2508  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4509  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2510511==> ecto_sql512Compiling 25 files (.ex)513    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 operator514    │515 93 │       <<_, unquoted::binary-size(size), _>> = quoted516    │                                  ~517    │518    └─ lib/ecto/adapters/postgres/connection.ex:93:34: Ecto.Adapters.Postgres.Connection.strip_quotes/1519520     warning: unused require Ecto.Query521     │522 140 │   require Ecto.Query523     │   ~524     │525     └─ lib/ecto/adapters/tds.ex:140:3526527     warning: unused require Logger528     │529 139 │   require Logger530     │   ~531     │532     └─ lib/ecto/adapters/tds.ex:139:3533534     warning: unused require Ecto.Query535     │536 107 │   require Ecto.Query537     │   ~538     │539     └─ lib/ecto/migrator.ex:107:3540541      warning: this clause of defp validate_index_opts!/1 is never used (or it will always fail/warn when invoked)542      │543 1558 │   defp validate_index_opts!(opts), do: opts544      │        ~545      │546      └─ lib/ecto/migration.ex:1558:8: Ecto.Migration.validate_index_opts!/1547548      warning: this clause of defp drop_reference_if_exists_expr/3 is never used (or it will always fail/warn when invoked)549      │550 1732 │     defp drop_reference_if_exists_expr(_, _, _),551      │          ~552      │553      └─ lib/ecto/adapters/postgres/connection.ex:1732:10: Ecto.Adapters.Postgres.Connection.drop_reference_if_exists_expr/3554555     warning: List.zip/1 is deprecated. Use Enum.zip/1 instead556     │557 681 │       |> List.zip()558     │               ~559     │560     └─ lib/ecto/adapters/sql.ex:681:15: Ecto.Adapters.SQL.format_table/1561     └─ lib/ecto/adapters/sql.ex:712:15: Ecto.Adapters.SQL.cells/2562563Generated ecto_sql app564warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"565  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2566  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1567  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5568  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2569  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4570  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2571572==> oban573Compiling 61 files (.ex)574     warning: struct MyXQL.Error is undefined (module MyXQL.Error is not available or is yet to be defined)575     │576 158 │     error in [DBConnection.ConnectionError, Postgrex.Error, MyXQL.Error] ->577     │           ~578     │579     └─ lib/oban/repo.ex:158:11: Oban.Repo.transaction/4580581     warning: struct MyXQL.Error is undefined (module MyXQL.Error is not available or is yet to be defined)582     │583 123 │     error in [DBConnection.ConnectionError, Postgrex.Error, MyXQL.Error] ->584     │           ~585     │586     └─ lib/oban/peers/database.ex:123:11: Oban.Peers.Database.handle_info/2587588Generated oban app589==> ecto_enum590Compiling 5 files (.ex)591Generated ecto_enum app592==> mishka_developer_tools593Compiling 3 files (.ex)594     warning: expected a map or struct when accessing .__struct__ in expression:595596         module.__struct__597598     where "module" was given the type:599600         # type: dynamic(atom())601         # from: lib/macros/database/crud.ex:260:12602         module.changeset(module.__struct__, attrs)603604     hint: "var.field" (without parentheses) means "var" is a map() while "var.fun()" (with parentheses) means "var" is an atom()605606     type warning found at:607     │608 260 │     module.changeset(module.__struct__, attrs)609     │                             ~610     │611     └─ lib/macros/database/crud.ex:260:29: MishkaDeveloperTools.DB.CRUD.create_record/3612613Generated mishka_developer_tools app614==> nimble_pool615Compiling 2 files (.ex)616Generated nimble_pool app617==> finch618Compiling 13 files (.ex)619    warning: the variable "window" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator620    │621 55 │       <<bytes_to_send::binary-size(window), rest::binary>> ->622    │                                    ~623    │624    └─ lib/finch/http2/request_stream.ex:55:36: Finch.HTTP2.RequestStream.next_chunk/2625626    warning: the variable "fittable_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator627    │628 77 │         <<fittable_binary::binary-size(fittable_size), overload_binary::binary>> =629    │                                        ~630    │631    └─ lib/finch/http2/request_stream.ex:77:40: Finch.HTTP2.RequestStream.continue_reduce/2632633     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead634     │635 362 │         Logger.warn(["Received unknown message: ", inspect(message)])636     │                ~637     │638     └─ lib/finch/http2/pool.ex:362:16: Finch.HTTP2.Pool.connected/3639640     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead641     │642 460 │         Logger.warn(["Received unknown message: ", inspect(message)])643     │                ~644     │645     └─ lib/finch/http2/pool.ex:460:16: Finch.HTTP2.Pool.connected_read_only/3646647Generated finch app648==> tesla649Compiling 57 files (.ex)650Generated tesla app651==> oauth2652Compiling 13 files (.ex)653Generated oauth2 app654==> ueberauth_github655Compiling 3 files (.ex)656Generated ueberauth_github app657==> ueberauth_google658Compiling 3 files (.ex)659Generated ueberauth_google app660warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"661  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2662  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1663  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5664  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2665  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4666  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2667668==> phoenix669Compiling 71 files (.ex)670    warning: unused require Logger671    │672  9 │   require Logger673    │   ~674    │675    └─ lib/phoenix/config.ex:9:3676677     warning: unused require Logger678     │679 281 │   require Logger680     │   ~681     │682     └─ lib/phoenix/endpoint.ex:281:3683684    warning: unused require Phoenix.Endpoint685    │686  6 │   require Phoenix.Endpoint687    │   ~688    │689    └─ lib/phoenix/controller.ex:6:3690691    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 operator692    │693 46 │       <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix694    │                             ~695    │696    └─ lib/phoenix/naming.ex:46:29: Phoenix.Naming.unsuffix/2697698    warning: unused require Phoenix.Endpoint699    │700 17 │   require Phoenix.Endpoint701    │   ~702    │703    └─ lib/phoenix/endpoint/render_errors.ex:17:3704705    warning: unused require Phoenix.Endpoint706    │707  6 │   require Phoenix.Endpoint708    │   ~709    │710    └─ lib/phoenix/channel/server.ex:6:3711712     warning: unused require Phoenix.Endpoint713     │714 202 │   require Phoenix.Endpoint715     │   ~716     │717     └─ lib/phoenix/socket.ex:202:3718719    warning: unused require Logger720    │721 70 │   require Logger722    │   ~723    │724    └─ lib/phoenix/socket/pool_supervisor.ex:70:3725726     warning: unused require Logger727     │728 100 │   require Logger729     │   ~730     │731     └─ lib/phoenix/token.ex:100:3732733     warning: comparison between distinct types found:734735         merge_all != []736737     given types:738739         dynamic(non_empty_list({atom(), term()})) != empty_list()740741     where "merge_all" was given the type:742743         # type: dynamic(non_empty_list({atom(), term()}))744         # from: lib/phoenix/router/route.ex:121:15745         merge_all = merge_params ++ merge_private ++ merge_assigns746747     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 false748749     type warning found at:750     │751 123 │     if merge_all != [] do752     │                  ~753     │754     └─ lib/phoenix/router/route.ex:123:18: Phoenix.Router.Route.build_prepare/1755756    warning: a struct for Plug.Conn is expected on struct update:757758        %Plug.Conn{conn | state: :sent}759760    but got type:761762        dynamic()763764    where "conn" was given the type:765766        # type: dynamic()767        # from: lib/phoenix/endpoint/render_errors.ex:55:17768        conn769770    when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"771772    type warning found at:773    │774 60 │           %Plug.Conn{conn | state: :sent}775    │           ~776    │777    └─ lib/phoenix/endpoint/render_errors.ex:60:11: Phoenix.Endpoint.RenderErrors.__catch__/5778779     warning: a struct for Plug.Conn is expected on struct update:780781         %Plug.Conn{conn | query_params: %{}, params: %{}}782783     but got type:784785         dynamic(%{..., params: %Plug.Conn.Unfetched{}})786787     where "conn" was given the types:788789         # type: dynamic(%{..., params: term()})790         # from: lib/phoenix/endpoint/render_errors.ex:133:17791         conn.params792793         # type: dynamic(%{..., params: %Plug.Conn.Unfetched{}})794         # from: lib/phoenix/endpoint/render_errors.ex:133:17795         conn.params796797     when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"798799     type warning found at:800     │801 134 │         %Plug.Conn.Unfetched{} -> %Plug.Conn{conn | query_params: %{}, params: %{}}802     │                                   ~803     │804     └─ lib/phoenix/endpoint/render_errors.ex:134:35: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1805806     warning: a struct for Plug.Conn is expected on struct update:807808         %Plug.Conn{conn | query_params: %{}, params: params}809810     but got type:811812         dynamic(%{..., params: not %Plug.Conn.Unfetched{}})813814     where "conn" was given the types:815816         # type: dynamic(%{..., params: term()})817         # from: lib/phoenix/endpoint/render_errors.ex:133:17818         conn.params819820         # type: dynamic(%{..., params: not %Plug.Conn.Unfetched{}})821         # from: lib/phoenix/endpoint/render_errors.ex:133:17822         conn.params823824     when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"825826     type warning found at:827     │828 135 │         params -> %Plug.Conn{conn | query_params: %{}, params: params}829     │                   ~830     │831     └─ lib/phoenix/endpoint/render_errors.ex:135:19: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1832833      warning: a struct for Plug.Conn is expected on struct update:834835          %Plug.Conn{conn | params: params}836837      but got type:838839          dynamic(%{..., params: map()})840841      where "conn" was given the type:842843          # type: dynamic(%{..., params: map()})844          # from: lib/phoenix/controller.ex:1327:17845          Map.get(conn.params, required_key)846847      when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"848849      type warning found at:850      │851 1334 │     %Plug.Conn{conn | params: params}852      │     ~853      │854      └─ lib/phoenix/controller.ex:1334:5: Phoenix.Controller.scrub_params/2855856Generated phoenix app857warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"858  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2859  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1860  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5861  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2862  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4863  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2864865==> phoenix_live_view866Compiling 31 files (.ex)867     warning: using single-quoted strings to represent charlists is deprecated.868     Use ~c"" if you indeed want a charlist or use "" instead.869     You may run "mix format --migrate" to change all single-quoted870     strings to use the ~c sigil and fix this warning.871     │872 319 │         {'LiveView', view},873     │          ~874     │875     └─ lib/phoenix_live_view/channel.ex:319:10876877     warning: using single-quoted strings to represent charlists is deprecated.878     Use ~c"" if you indeed want a charlist or use "" instead.879     You may run "mix format --migrate" to change all single-quoted880     strings to use the ~c sigil and fix this warning.881     │882 320 │         {'Parent pid', parent_pid},883     │          ~884     │885     └─ lib/phoenix_live_view/channel.ex:320:10886887     warning: using single-quoted strings to represent charlists is deprecated.888     Use ~c"" if you indeed want a charlist or use "" instead.889     You may run "mix format --migrate" to change all single-quoted890     strings to use the ~c sigil and fix this warning.891     │892 321 │         {'Transport pid', transport_pid},893     │          ~894     │895     └─ lib/phoenix_live_view/channel.ex:321:10896897     warning: using single-quoted strings to represent charlists is deprecated.898     Use ~c"" if you indeed want a charlist or use "" instead.899     You may run "mix format --migrate" to change all single-quoted900     strings to use the ~c sigil and fix this warning.901     │902 322 │         {'Topic', topic},903     │          ~904     │905     └─ lib/phoenix_live_view/channel.ex:322:10906907     warning: using single-quoted strings to represent charlists is deprecated.908     Use ~c"" if you indeed want a charlist or use "" instead.909     You may run "mix format --migrate" to change all single-quoted910     strings to use the ~c sigil and fix this warning.911     │912 323 │         {'Components count', map_size(cid_to_component)}913     │          ~914     │915     └─ lib/phoenix_live_view/channel.ex:323:10916917     warning: using single-quoted strings to represent charlists is deprecated.918     Use ~c"" if you indeed want a charlist or use "" instead.919     You may run "mix format --migrate" to change all single-quoted920     strings to use the ~c sigil and fix this warning.921     │922 329 │     [data: [{'State', state}]]923     │              ~924     │925     └─ lib/phoenix_live_view/channel.ex:329:14926927     warning: using single-quoted strings to represent charlists is deprecated.928     Use ~c"" if you indeed want a charlist or use "" instead.929     You may run "mix format --migrate" to change all single-quoted930     strings to use the ~c sigil and fix this warning.931     │932 112 │   @codepoints '\s\n\r\t'933     │               ~934     │935     └─ lib/phoenix_live_view/html_algebra.ex:112:15936937     warning: using single-quoted strings to represent charlists is deprecated.938     Use ~c"" if you indeed want a charlist or use "" instead.939     You may run "mix format --migrate" to change all single-quoted940     strings to use the ~c sigil and fix this warning.941     │942 125 │     do: :binary.first(text) in '\n\r'943     │                                ~944     │945     └─ lib/phoenix_live_view/html_algebra.ex:125:32946947     warning: using single-quoted strings to represent charlists is deprecated.948     Use ~c"" if you indeed want a charlist or use "" instead.949     You may run "mix format --migrate" to change all single-quoted950     strings to use the ~c sigil and fix this warning.951     │952 130 │     do: :binary.last(text) in '\n\r'953     │                               ~954     │955     └─ lib/phoenix_live_view/html_algebra.ex:130:31956957     warning: using single-quoted strings to represent charlists is deprecated.958     Use ~c"" if you indeed want a charlist or use "" instead.959     You may run "mix format --migrate" to change all single-quoted960     strings to use the ~c sigil and fix this warning.961     │962 503 │   defp count_newlines_until_text(<<char, rest::binary>>, counter) when char in '\s\t\r',963     │                                                                                ~964     │965     └─ lib/phoenix_live_view/html_formatter.ex:503:80966967     warning: using single-quoted strings to represent charlists is deprecated.968     Use ~c"" if you indeed want a charlist or use "" instead.969     You may run "mix format --migrate" to change all single-quoted970     strings to use the ~c sigil and fix this warning.971     │972 536 │     do: if(String.trim_leading(text) == "", do: false, else: !(:binary.last(text) in '\s\t'))973     │                                                                                      ~974     │975     └─ lib/phoenix_live_view/html_formatter.ex:536:86976977     warning: using single-quoted strings to represent charlists is deprecated.978     Use ~c"" if you indeed want a charlist or use "" instead.979     You may run "mix format --migrate" to change all single-quoted980     strings to use the ~c sigil and fix this warning.981     │982 546 │       if String.trim_leading(text) != "" and :binary.first(text) not in '\s\t\n\r' do983     │                                                                         ~984     │985     └─ lib/phoenix_live_view/html_formatter.ex:546:73986987    warning: using single-quoted strings to represent charlists is deprecated.988    Use ~c"" if you indeed want a charlist or use "" instead.989    You may run "mix format --migrate" to change all single-quoted990    strings to use the ~c sigil and fix this warning.991    │992  3 │   @space_chars '\s\t\f'993    │                ~994    │995    └─ lib/phoenix_live_view/html_tokenizer.ex:3:16996997    warning: using single-quoted strings to represent charlists is deprecated.998    Use ~c"" if you indeed want a charlist or use "" instead.999    You may run "mix format --migrate" to change all single-quoted1000    strings to use the ~c sigil and fix this warning.1001    │1002  4 │   @quote_chars '"\''1003    │                ~1004    │1005    └─ lib/phoenix_live_view/html_tokenizer.ex:4:1610061007    warning: using single-quoted strings to represent charlists is deprecated.1008    Use ~c"" if you indeed want a charlist or use "" instead.1009    You may run "mix format --migrate" to change all single-quoted1010    strings to use the ~c sigil and fix this warning.1011    │1012  5 │   @stop_chars '>/=\r\n' ++ @quote_chars ++ @space_chars1013    │               ~1014    │1015    └─ lib/phoenix_live_view/html_tokenizer.ex:5:1510161017    warning: unused require Logger1018    │1019 25 │   require Logger1020    │   ~1021    │1022    └─ lib/phoenix_live_view/socket.ex:25:310231024     warning: unused require Phoenix.ChannelTest1025     │1026 179 │   require Phoenix.ChannelTest1027     │   ~1028     │1029     └─ lib/phoenix_live_view/test/live_view_test.ex:179:310301031     warning: unused require Phoenix.ConnTest1032     │1033 178 │   require Phoenix.ConnTest1034     │   ~1035     │1036     └─ lib/phoenix_live_view/test/live_view_test.ex:178:310371038    warning: unused require Phoenix.ChannelTest1039    │1040  4 │   require Phoenix.ChannelTest1041    │   ~1042    │1043    └─ lib/phoenix_live_view/test/upload_client.ex:4:310441045    warning: unused require Logger1046    │1047  6 │   require Logger1048    │   ~1049    │1050    └─ lib/phoenix_live_view/upload_channel.ex:6:310511052     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:10531054         %Phoenix.LiveView.Socket{1055           socket1056           | private: Map.put(socket.private, :phoenix_live_layout, {mod, template})1057         }10581059     but got type:10601061         dynamic()10621063     where "socket" was given the type:10641065         # type: dynamic()1066         # from: lib/phoenix_live_view/utils.ex:459:211067         socket10681069     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"10701071     type warning found at:1072     │1073 460 │     %Socket{socket | private: Map.put(socket.private, :phoenix_live_layout, {mod, template})}1074     │     ~1075     │1076     └─ lib/phoenix_live_view/utils.ex:460:5: Phoenix.LiveView.Utils.do_mount_opt/310771078     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:10791080         %Phoenix.LiveView.Socket{socket | private: Map.put(socket.private, :phoenix_live_layout, false)}10811082     but got type:10831084         dynamic()10851086     where "socket" was given the type:10871088         # type: dynamic()1089         # from: lib/phoenix_live_view/utils.ex:463:211090         socket10911092     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"10931094     type warning found at:1095     │1096 464 │     %Socket{socket | private: Map.put(socket.private, :phoenix_live_layout, false)}1097     │     ~1098     │1099     └─ lib/phoenix_live_view/utils.ex:464:5: Phoenix.LiveView.Utils.do_mount_opt/311001101     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:11021103         %Phoenix.LiveView.Socket{1104           socket1105           | assigns: Map.merge(temp_assigns, socket.assigns),1106             private: Map.put(socket.private, :temporary_assigns, temp_assigns)1107         }11081109     but got type:11101111         dynamic()11121113     where "socket" was given the type:11141115         # type: dynamic()1116         # from: lib/phoenix_live_view/utils.ex:473:211117         socket11181119     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"11201121     type warning found at:1122     │1123 480 │     %Socket{1124     │     ~1125     │1126     └─ lib/phoenix_live_view/utils.ex:480:5: Phoenix.LiveView.Utils.do_mount_opt/311271128     warning: a struct for Phoenix.LiveView.Socket is expected on struct update:11291130         %Phoenix.LiveView.Socket{1131           socket1132           | assigns: %Phoenix.LiveView.Socket.AssignsNotInSocket{__assigns__: assigns}1133         }11341135     but got type:11361137         dynamic(%{..., assigns: term()})11381139     where "socket" was given the type:11401141         # type: dynamic(%{..., assigns: term()})1142         # from: lib/phoenix_live_view/utils.ex:491:431143         %{assigns: assigns} = socket11441145     when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"11461147     type warning found at:1148     │1149 492 │     socket = %Socket{socket | assigns: %Socket.AssignsNotInSocket{__assigns__: assigns}}1150     │              ~1151     │1152     └─ lib/phoenix_live_view/utils.ex:492:14: Phoenix.LiveView.Utils.render_assigns/111531154      warning: a struct for Phoenix.HTML.Form is expected on struct update:11551156          %Phoenix.HTML.Form{Phoenix.HTML.FormData.to_form(form_for, form_options) | action: action || "#"}11571158      but got type:11591160          dynamic()11611162      where "form_for" was given the type:11631164          # type: dynamic(not false and not nil)1165          # from: lib/phoenix_live_view/helpers.ex:1101:141166          form_for = assigns[:for] || :erlang.error(ArgumentError.exception("missing :for assign to form"))11671168      where "form_options" was given the type:11691170          # type: dynamic(list({term(), term()}))1171          # from: lib/phoenix_live_view/helpers.ex:1102:181172          form_options = assigns_to_attributes(assigns, [:action, :for])11731174      you must assign "Phoenix.HTML.FormData.to_form(form_for, form_options)" to variable and pattern match on "%Phoenix.HTML.Form{}"11751176      type warning found at:1177      │1178 1106 │       form = %Phoenix.HTML.Form{1179      │              ~1180      │1181      └─ lib/phoenix_live_view/helpers.ex:1106:14: Phoenix.LiveView.Helpers.form/111821183     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:11841185         %Phoenix.LiveView.UploadEntry{entry | preflighted?: true}11861187     but got type:11881189         dynamic()11901191     where "entry" was given the type:11921193         # type: dynamic()1194         # from: lib/phoenix_live_view/upload_config.ex:339:281195         entry <- conf.entries11961197     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"11981199     type warning found at:1200     │1201 339 │       | entries: for(entry <- conf.entries, do: %UploadEntry{entry | preflighted?: true})1202     │                                                 ~1203     │1204     └─ lib/phoenix_live_view/upload_config.ex:339:49: Phoenix.LiveView.UploadConfig.mark_preflighted/112051206     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:12071208         %Phoenix.LiveView.UploadEntry{entry | valid?: true, uuid: generate_uuid()}12091210     but got type:12111212         dynamic()12131214     where "entry" was given the type:12151216         # type: dynamic()1217         # from: lib/phoenix_live_view/upload_config.ex:539:301218         entry12191220     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"12211222     type warning found at:1223     │1224 540 │     entry = %UploadEntry{entry | valid?: true, uuid: generate_uuid()}1225     │             ~1226     │1227     └─ lib/phoenix_live_view/upload_config.ex:540:13: Phoenix.LiveView.UploadConfig.put_valid_entry/212281229     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:12301231         %Phoenix.LiveView.UploadEntry{entry | valid?: false}12321233     but got type:12341235         dynamic()12361237     where "entry" was given the type:12381239         # type: dynamic()1240         # from: lib/phoenix_live_view/upload_config.ex:552:321241         entry12421243     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"12441245     type warning found at:1246     │1247 553 │     entry = %UploadEntry{entry | valid?: false}1248     │             ~1249     │1250     └─ lib/phoenix_live_view/upload_config.ex:553:13: Phoenix.LiveView.UploadConfig.put_invalid_entry/312511252    warning: Logger.disable/1 is deprecated. Use Logger.put_process_level(pid, :none) instead1253    │1254 72 │     Logger.disable(self())1255    │            ~1256    │1257    └─ lib/phoenix_live_view/test/client_proxy.ex:72:12: Phoenix.LiveViewTest.ClientProxy.init/112581259     warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:12601261         %Phoenix.LiveView.UploadEntry{entry | cancelled?: true}12621263     but got type:12641265         dynamic()12661267     where "entry" was given the type:12681269         # type: dynamic()1270         # from: lib/phoenix_live_view/upload_config.ex:635:421271         entry12721273     when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"12741275     type warning found at:1276     │1277 635 │         update_entry(conf, entry.ref, fn entry -> %UploadEntry{entry | cancelled?: true} end)1278     │                                                   ~1279     │1280     └─ lib/phoenix_live_view/upload_config.ex:635:51: Phoenix.LiveView.UploadConfig.cancel_entry/212811282     warning: a struct for Phoenix.LiveViewTest.ClientProxy is expected on struct update:12831284         %Phoenix.LiveViewTest.ClientProxy{view | rendered: rendered}12851286     but got type:12871288         dynamic(%{..., rendered: map()})12891290     where "view" was given the type:12911292         # type: dynamic(%{..., rendered: map()})1293         # from: lib/phoenix_live_view/test/client_proxy.ex:701:241294         Phoenix.LiveViewTest.DOM.merge_diff(view.rendered, diff)12951296     when defining the variable "view", you must also pattern match on "%Phoenix.LiveViewTest.ClientProxy{}"12971298     type warning found at:1299     │1300 702 │         new_view = %ClientProxy{view | rendered: rendered}1301     │                    ~1302     │1303     └─ lib/phoenix_live_view/test/client_proxy.ex:702:20: Phoenix.LiveViewTest.ClientProxy.merge_rendered/313041305      warning: Plug.Conn.Query.decode_pair/2 is deprecated. Use decode_init/0, decode_each/2, and decode_done/2 instead1306      │1307 1095 │       Plug.Conn.Query.decode_pair({name, DOM.attribute(selected, "value")}, acc)1308      │                       ~1309      │1310      └─ lib/phoenix_live_view/test/client_proxy.ex:1095:23: Phoenix.LiveViewTest.ClientProxy.form_defaults/31311      └─ lib/phoenix_live_view/test/client_proxy.ex:1100:21: Phoenix.LiveViewTest.ClientProxy.form_defaults/31312      └─ lib/phoenix_live_view/test/client_proxy.ex:1110:27: Phoenix.LiveViewTest.ClientProxy.form_defaults/31313      └─ lib/phoenix_live_view/test/client_proxy.ex:1119:25: Phoenix.LiveViewTest.ClientProxy.form_defaults/313141315     warning: the right-hand side of || (shown as ... below) will never be executed:13161317         conn.private[:live_view_connect_info] || prune_conn(conn) || ...13181319     because the left-hand side always evaluates to:13201321         dynamic(not false and not nil)13221323     where "conn" was given the types:13241325         # type: dynamic(%Plug.Conn{assigns: %{..., live_module: term()}, status: integer()})1326         # from: lib/phoenix_live_view/test/live_view_test.ex:320:721327         %Plug.Conn{status: 200, assigns: %{live_module: live_module}} = conn13281329         # type: dynamic(%Plug.Conn{1330           assigns: %{..., live_module: term()},1331           private:1332             %{..., __struct__: atom()} or nil or empty_list() or non_empty_list(term(), term()) or1333               non_struct_map(),1334           status: integer()1335         })1336         # from: lib/phoenix_live_view/test/live_view_test.ex:334:351337         conn.private[:live_view_connect_params]13381339     type warning found at:1340     │1341 335 │       connect_info: conn.private[:live_view_connect_info] || prune_conn(conn) || %{},1342     │       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1343     │1344     └─ lib/phoenix_live_view/test/live_view_test.ex:335: Phoenix.LiveViewTest.connect_from_static_token/213451346     warning: the following clause is redundant:13471348         def update(assigns, _key, fun) when is_function(fun, 1) or is_function(fun, 2)13491350     it has type:13511352         dynamic(), dynamic(), dynamic((none() -> term()) or (none(), none() -> term()))13531354     previous clauses have already matched on the following types:13551356         %Phoenix.LiveView.Socket{}, term(), (none(), none() -> term())1357         %Phoenix.LiveView.Socket{}, term(), (none() -> term())1358         term(), term(), (none(), none() -> term())1359         term(), term(), (none() -> term())13601361     │1362 952 │   def update(assigns, _key, fun) when is_function(fun, 1) or is_function(fun, 2) do1363     │       ~1364     │1365     └─ lib/phoenix_live_view.ex:952:7: Phoenix.LiveView.update/313661367     warning: this clause of defp class_names/1 is never used (or it will always fail/warn when invoked)1368     │1369 603 │   defp class_names(nil), do: []1370     │        ~1371     │1372     └─ lib/phoenix_live_view/js.ex:603:8: Phoenix.LiveView.JS.class_names/113731374     warning: the following clause is redundant:13751376         def to_iodata(%_{} = struct)13771378     it has type:13791380         dynamic(%Phoenix.LiveView.Rendered{})13811382     previous clauses have already matched on the following types:13831384         %Phoenix.LiveView.Rendered{}13851386     │1387 127 │     def to_iodata(%_{} = struct) do1388     │         ~1389     │1390     └─ lib/phoenix_live_view/engine.ex:127:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/113911392     warning: the 1st pattern in clause will never match:13931394         nil13951396     because it is expected to receive type:13971398         dynamic(%Phoenix.LiveView.Rendered{})13991400     hint: defimpl for Phoenix.LiveView.Rendered requires its callbacks to match exclusively on %Phoenix.LiveView.Rendered{}14011402     type warning found at:1403     │1404 131 │     def to_iodata(nil) do1405     │     ~~~~~~~~~~~~~~~~~~~~~1406     │1407     └─ lib/phoenix_live_view/engine.ex:131: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/114081409     warning: the following clause is redundant:14101411         def to_iodata(other)14121413     it has type:14141415         dynamic(%Phoenix.LiveView.Rendered{})14161417     previous clauses have already matched on the following types:14181419         %Phoenix.LiveView.Rendered{}14201421     │1422 135 │     def to_iodata(other) do1423     │         ~1424     │1425     └─ lib/phoenix_live_view/engine.ex:135:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/114261427Generated phoenix_live_view app1428warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1429  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21430  (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11431  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51432  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21433  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41434  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/214351436==> mishka_installer1437Compiling 33 files (.ex)1438     warning: using single-quoted strings to represent charlists is deprecated.1439     Use ~c"" if you indeed want a charlist or use "" instead.1440     You may run "mix format --migrate" to change all single-quoted1441     strings to use the ~c sigil and fix this warning.1442     │1443 418 │           {:error, :application_ensure, :load, {'no such file or directory', _app}} ->1444     │                                                 ~1445     │1446     └─ lib/installer/dep_changes_protector.ex:418:4914471448     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1449     │1450 102 │     Logger.warn("Your ETS state of setting is going to be updated")1451     │            ~1452     │1453     └─ lib/helper/setting.ex:102:12: MishkaInstaller.Helper.Setting.handle_info/214541455     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1456     │1457 114 │     Logger.warn("Your ETS state of setting was restarted by a problem")1458     │            ~1459     │1460     └─ lib/helper/setting.ex:114:12: MishkaInstaller.Helper.Setting.terminate/214611462     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1463     │1464 409 │       Logger.warn("Try to re-add installed extensions")1465     │              ~1466     │1467     └─ lib/installer/dep_changes_protector.ex:409:14: MishkaInstaller.Installer.DepChangesProtector.add_extensions_when_server_reset/114681469     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1470     │1471 225 │       Logger.warn("Try to re-create Mix file")1472     │              ~1473     │1474     └─ lib/installer/dep_handler.ex:225:14: MishkaInstaller.Installer.DepHandler.create_mix_file_and_start_compile/214751476     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1477     │1478 256 │       Logger.warn("Try to re-create Mix file")1479     │              ~1480     │1481     └─ lib/installer/dep_handler.ex:256:14: MishkaInstaller.Installer.DepHandler.create_mix_file/014821483     warning: using single-quoted strings to represent charlists is deprecated.1484     Use ~c"" if you indeed want a charlist or use "" instead.1485     You may run "mix format --migrate" to change all single-quoted1486     strings to use the ~c sigil and fix this warning.1487     │1488 383 │           {'MIX_ENV', '#{Mix.env()}'},1489     │            ~1490     │1491     └─ lib/installer/run_time_sourcing.ex:383:1214921493     warning: using single-quoted strings to represent charlists is deprecated.1494     Use ~c"" if you indeed want a charlist or use "" instead.1495     You may run "mix format --migrate" to change all single-quoted1496     strings to use the ~c sigil and fix this warning.1497     │1498 383 │           {'MIX_ENV', '#{Mix.env()}'},1499     │                       ~1500     │1501     └─ lib/installer/run_time_sourcing.ex:383:2315021503     warning: using single-quoted strings to represent charlists is deprecated.1504     Use ~c"" if you indeed want a charlist or use "" instead.1505     You may run "mix format --migrate" to change all single-quoted1506     strings to use the ~c sigil and fix this warning.1507     │1508 384 │           {'INSTALLER_DB', '#{MishkaInstaller.repo()}'},1509     │            ~1510     │1511     └─ lib/installer/run_time_sourcing.ex:384:1215121513     warning: using single-quoted strings to represent charlists is deprecated.1514     Use ~c"" if you indeed want a charlist or use "" instead.1515     You may run "mix format --migrate" to change all single-quoted1516     strings to use the ~c sigil and fix this warning.1517     │1518 384 │           {'INSTALLER_DB', '#{MishkaInstaller.repo()}'},1519     │                            ~1520     │1521     └─ lib/installer/run_time_sourcing.ex:384:2815221523     warning: using single-quoted strings to represent charlists is deprecated.1524     Use ~c"" if you indeed want a charlist or use "" instead.1525     You may run "mix format --migrate" to change all single-quoted1526     strings to use the ~c sigil and fix this warning.1527     │1528 385 │           {'INSTALLER_PROJECT_PATH', '#{MishkaInstaller.get_config(:project_path)}'}1529     │            ~1530     │1531     └─ lib/installer/run_time_sourcing.ex:385:1215321533     warning: using single-quoted strings to represent charlists is deprecated.1534     Use ~c"" if you indeed want a charlist or use "" instead.1535     You may run "mix format --migrate" to change all single-quoted1536     strings to use the ~c sigil and fix this warning.1537     │1538 385 │           {'INSTALLER_PROJECT_PATH', '#{MishkaInstaller.get_config(:project_path)}'}1539     │                                      ~1540     │1541     └─ lib/installer/run_time_sourcing.ex:385:3815421543    warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1544    │1545 43 │     Logger.warn("Your ETS state of plugin was restarted by a problem")1546    │            ~1547    │1548    └─ lib/plugin_manager/state/plugin_ets.ex:43:12: MishkaInstaller.PluginETS.terminate/215491550     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1551     │1552 180 │         if Mix.env() == :test, do: Logger.warn("Plugin State of #{element.name} is being pushed")1553     │                                           ~1554     │1555     └─ lib/plugin_manager/state/plugin_state.ex:180:43: MishkaInstaller.PluginState.push_call/115561557     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1558     │1559 391 │       Logger.warn(1560     │              ~1561     │1562     └─ lib/plugin_manager/state/plugin_state.ex:391:14: MishkaInstaller.PluginState.terminate/2156315641565== Compilation error in file lib/database/setting.ex ==1566** (RuntimeError) This module does not exist or is not configured if it is related to Ecto. Please read the documentation at GitHub. 1567 Output: nil.1568    lib/mishka_installer.ex:281: MishkaInstaller.ensure_compiled/11569    lib/database/setting.ex:14: (module)1570could not compile dependency :mishka_installer, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile mishka_installer --force", update it with "mix deps.update mishka_installer" or clean it with "mix deps.clean mishka_installer"