Build log
nerves_system_qemu_aarch64
mppm 0.1.1 · fail · run mppm-0.1.1-1791006358568
2472 of 2472 lines
1Resolving Hex dependencies...2Resolution completed in 0.402s3Unchanged: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.0114* Getting mppm (Hex package)115* Getting nerves (Hex package)116* Getting ring_logger (Hex package)117* Getting toolshed (Hex package)118* Getting nerves_runtime (Hex package)119* Getting nerves_system_bbb (Hex package)120* Getting nerves_system_mangopi_mq_pro (Hex package)121* Getting nerves_system_qemu_aarch64 (Hex package)122* Getting nerves_system_rpi0 (Hex package)123* Getting nerves_system_rpi4 (Hex package)124* Getting nerves_system_rpi5 (Hex package)125* Getting nerves_system_trellis (Hex package)126* Getting nerves_system_x86_64 (Hex package)127* Getting nerves_system_br (Hex package)128* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)129* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)130* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)131* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)132* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)133* Getting nerves_logging (Hex package)134* Getting nerves_uevent (Hex package)135* Getting uboot_env (Hex package)136* Getting elixir_make (Hex package)137* Getting property_table (Hex package)138* Getting circular_buffer (Hex package)139* Getting interactive_cmd (Hex package)140* Getting nerves_discovery (Hex package)141* Getting tablet (Hex package)142* Getting ecto_network (Hex package)143* Getting ecto_sql (Hex package)144* Getting gettext (Hex package)145* Getting httpoison (Hex package)146* Getting jason (Hex package)147* Getting logger_file_backend (Hex package)148* Getting oauth2 (Hex package)149* Getting observer_cli (Hex package)150* Getting phoenix (Hex package)151* Getting phoenix_ecto (Hex package)152* Getting phoenix_html (Hex package)153* Getting phoenix_live_dashboard (Hex package)154* Getting phoenix_live_view (Hex package)155* Getting phoenix_pubsub (Hex package)156* Getting plug_cowboy (Hex package)157* Getting postgrex (Hex package)158* Getting slugify (Hex package)159* Getting xmlrpc (Hex package)160* Getting decimal (Hex package)161* Getting erlsom (Hex package)162* Getting db_connection (Hex package)163* Getting telemetry (Hex package)164* Getting cowboy (Hex package)165* Getting cowboy_telemetry (Hex package)166* Getting plug (Hex package)167* Getting mime (Hex package)168* Getting plug_crypto (Hex package)169* Getting cowlib (Hex package)170* Getting ranch (Hex package)171* Getting telemetry_metrics (Hex package)172* Getting ecto (Hex package)173* Getting recon (Hex package)174* Getting tesla (Hex package)175* Getting hackney (Hex package)176* Getting certifi (Hex package)177* Getting idna (Hex package)178* Getting metrics (Hex package)179* Getting mimerl (Hex package)180* Getting parse_trans (Hex package)181* Getting ssl_verify_fun (Hex package)182* Getting unicode_util_compat (Hex package)183* Getting expo (Hex package)184Found packages with security advisories, see above for details185You have added/upgraded packages you could sponsor, run `mix hex.sponsor` to learn more186==> nerves_system_br187Generated nerves_system_br app188==> mime189Compiling 1 file (.ex)190Generated mime app191==> circular_buffer192Compiling 1 file (.ex)193Generated circular_buffer app194==> nerves_compatibility_test195===> Analyzing applications...196===> Compiling erlsom197 ┌─ src/erlsom.erl:198 │199 143 │ case catch erlsom_compile:compile(Xsd, Options) of200 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.201Compile directive 'nowarn_deprecated_catch' can be used to suppress202warnings in selected modules.203204 ┌─ src/erlsom.erl:205 │206 245 │ case catch erlsom_sax:parseDocument(Xml, State,207 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.208Compile directive 'nowarn_deprecated_catch' can be used to suppress209warnings in selected modules.210211212 ┌─ src/erlsom_sax_list.erl:213 │214 1063 │ case catch list_to_integer(Tail1) of215 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.216Compile directive 'nowarn_deprecated_catch' can be used to suppress217warnings in selected modules.218219220 ┌─ src/erlsom_sax_latin9.erl:221 │222 1063 │ case catch list_to_integer(Tail1) of223 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.224Compile directive 'nowarn_deprecated_catch' can be used to suppress225warnings in selected modules.226227228 ┌─ src/erlsom_compile.erl:229 │230 250 │ case catch transform(ParsedXsd, Acc) of231 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.232Compile directive 'nowarn_deprecated_catch' can be used to suppress233warnings in selected modules.234235 ┌─ src/erlsom_compile.erl:236 │237 254 │ case catch erlsom_pass2:secondPass(IntermediateResult#p1acc.tps,238 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.239Compile directive 'nowarn_deprecated_catch' can be used to suppress240warnings in selected modules.241242243 ┌─ src/erlsom_sax_utf16be.erl:244 │245 1063 │ case catch list_to_integer(Tail1) of246 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.247Compile directive 'nowarn_deprecated_catch' can be used to suppress248warnings in selected modules.249250251 ┌─ src/erlsom_sax_utf16le.erl:252 │253 1063 │ case catch list_to_integer(Tail1) of254 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.255Compile directive 'nowarn_deprecated_catch' can be used to suppress256warnings in selected modules.257258259 ┌─ src/erlsom_sax_latin1.erl:260 │261 1063 │ case catch list_to_integer(Tail1) of262 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.263Compile directive 'nowarn_deprecated_catch' can be used to suppress264warnings in selected modules.265266267 ┌─ src/erlsom_sax_utf8.erl:268 │269 1063 │ case catch list_to_integer(Tail1) of270 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.271Compile directive 'nowarn_deprecated_catch' can be used to suppress272warnings in selected modules.273274275==> recon276Compiling 6 files (.erl)277Generated recon app278==> plug_crypto279Compiling 5 files (.ex)280Generated plug_crypto app281==> nerves_compatibility_test282===> Analyzing applications...283===> Compiling mimerl284===> Analyzing applications...285===> Compiling ranch286==> ssl_verify_fun287Compiling 7 files (.erl)288Generated ssl_verify_fun app289==> observer_cli290Compiling 17 files (.erl)291Generated observer_cli app292==> tablet293Compiling 2 files (.ex)294Generated tablet app295==> elixir_make296Compiling 8 files (.ex)297Generated elixir_make app298==> nerves_logging299 CC kmsg_tailer.o300 LD kmsg_tailer301Compiling 5 files (.ex)302Generated nerves_logging app303==> nerves_compatibility_test304===> Analyzing applications...305===> Compiling cowlib306==> logger_file_backend307Compiling 1 file (.ex)308Generated logger_file_backend app309==> nerves_discovery310Compiling 5 files (.ex)311Generated nerves_discovery app312==> ring_logger313Compiling 7 files (.ex)314Generated ring_logger app315==> decimal316Compiling 4 files (.ex)317Generated decimal app318==> jason319Compiling 10 files (.ex)320Generated jason app321==> interactive_cmd322Compiling 1 file (.ex)323Generated interactive_cmd app324==> nerves325Compiling 65 files (.ex)326 warning: redefining module Mix.Tasks.Nerves.Init (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Mix.Tasks.Nerves.Init.beam)327 │328 6 │ defmodule Mix.Tasks.Nerves.Init do329 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~330 │331 └─ lib/mix/tasks/nerves.init.ex:6: Mix.Tasks.Nerves.Init (module)332333 warning: redefining module Nerves (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.beam)334 │335 6 │ defmodule Nerves do336 │ ~~~~~~~~~~~~~~~~~~~337 │338 └─ lib/nerves.ex:6: Nerves (module)339340 warning: redefining module Nerves.ArtifactResolver (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.ArtifactResolver.beam)341 │342 5 │ defmodule Nerves.ArtifactResolver do343 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~344 │345 └─ lib/nerves/artifact_resolver.ex:5: Nerves.ArtifactResolver (module)346347 warning: redefining module Nerves.BuildAction.AppModes (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.AppModes.beam)348 │349 6 │ defmodule Nerves.BuildAction.AppModes do350 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~351 │352 └─ lib/nerves/build_action/app_modes.ex:6: Nerves.BuildAction.AppModes (module)353354 warning: redefining module Nerves.BuildAction.CheckExecutables (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.CheckExecutables.beam)355 │356 5 │ defmodule Nerves.BuildAction.CheckExecutables do357 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~358 │359 └─ lib/nerves/build_action/check_executables.ex:5: Nerves.BuildAction.CheckExecutables (module)360361 warning: redefining module Nerves.BuildAction.Erlinit (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.Erlinit.beam)362 │363 8 │ defmodule Nerves.BuildAction.Erlinit do364 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~365 │366 └─ lib/nerves/build_action/erlinit.ex:8: Nerves.BuildAction.Erlinit (module)367368 warning: redefining module Nerves.BuildAction.Firmware (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.Firmware.beam)369 │370 5 │ defmodule Nerves.BuildAction.Firmware do371 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~372 │373 └─ lib/nerves/build_action/firmware.ex:5: Nerves.BuildAction.Firmware (module)374375 warning: redefining module Nerves.BuildAction.IExStartupCheck (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.IExStartupCheck.beam)376 │377 7 │ defmodule Nerves.BuildAction.IExStartupCheck do378 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~379 │380 └─ lib/nerves/build_action/iex_startup_check.ex:7: Nerves.BuildAction.IExStartupCheck (module)381382 warning: redefining module Nerves.BuildAction.NervesV1System (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1System.beam)383 │384 5 │ defmodule Nerves.BuildAction.NervesV1System do385 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~386 │387 └─ lib/nerves/build_action/nerves_v1_system.ex:5: Nerves.BuildAction.NervesV1System (module)388389 warning: redefining module Nerves.BuildAction.NervesV1Toolchain (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1Toolchain.beam)390 │391 5 │ defmodule Nerves.BuildAction.NervesV1Toolchain do392 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~393 │394 └─ lib/nerves/build_action/nerves_v1_toolchain.ex:5: Nerves.BuildAction.NervesV1Toolchain (module)395396 warning: redefining module Nerves.BuildAction.Rootfs (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.Rootfs.beam)397 │398 5 │ defmodule Nerves.BuildAction.Rootfs do399 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~400 │401 └─ lib/nerves/build_action/rootfs.ex:5: Nerves.BuildAction.Rootfs (module)402403 warning: redefining module Nerves.BuildAction.SortApps (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.SortApps.beam)404 │405 6 │ defmodule Nerves.BuildAction.SortApps do406 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~407 │408 └─ lib/nerves/build_action/sort_apps.ex:6: Nerves.BuildAction.SortApps (module)409410 warning: redefining module Nerves.BuildAction.StripAll (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.StripAll.beam)411 │412 5 │ defmodule Nerves.BuildAction.StripAll do413 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~414 │415 └─ lib/nerves/build_action/strip_all.ex:5: Nerves.BuildAction.StripAll (module)416417 warning: redefining module Nerves.BuildAction.Trimmer (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.Trimmer.beam)418 │419 5 │ defmodule Nerves.BuildAction.Trimmer do420 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~421 │422 └─ lib/nerves/build_action/trimmer.ex:5: Nerves.BuildAction.Trimmer (module)423424 warning: redefining module Nerves.BuildPlan (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildPlan.beam)425 │426 5 │ defmodule Nerves.BuildPlan do427 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~428 │429 └─ lib/nerves/build_plan.ex:5: Nerves.BuildPlan (module)430431 warning: redefining module Nerves.BuildPlan.Checks (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildPlan.Checks.beam)432 │433 5 │ defmodule Nerves.BuildPlan.Checks do434 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~435 │436 └─ lib/nerves/build_plan/checks.ex:5: Nerves.BuildPlan.Checks (module)437438 warning: redefining module Nerves.Container (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.Container.beam)439 │440 6 │ defmodule Nerves.Container do441 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~442 │443 └─ lib/nerves/container.ex:6: Nerves.Container (module)444445 warning: redefining module Nerves.Fingerprint (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.Fingerprint.beam)446 │447 5 │ defmodule Nerves.Fingerprint do448 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~449 │450 └─ lib/nerves/fingerprint.ex:5: Nerves.Fingerprint (module)451452 warning: redefining module Nerves.MixPackage (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.MixPackage.beam)453 │454 5 │ defmodule Nerves.MixPackage do455 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~456 │457 └─ lib/nerves/mix_package.ex:5: Nerves.MixPackage (module)458459 warning: redefining module Nerves.Paths (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.Paths.beam)460 │461 5 │ defmodule Nerves.Paths do462 │ ~~~~~~~~~~~~~~~~~~~~~~~~~463 │464 └─ lib/nerves/paths.ex:5: Nerves.Paths (module)465466 warning: redefining module Nerves.TargetTuple (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.TargetTuple.beam)467 │468 5 │ defmodule Nerves.TargetTuple do469 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~470 │471 └─ lib/nerves/target_tuple.ex:5: Nerves.TargetTuple (module)472473Generated nerves app474==> nerves_toolchain_aarch64_nerves_linux_gnu475Compiling 1 file (.ex)476Generated nerves_toolchain_aarch64_nerves_linux_gnu app477==> nerves_system_qemu_aarch64478Compiling 1 file (.ex)479Generated nerves_system_qemu_aarch64 app480==> nerves_compatibility_test481===> Analyzing applications...482===> Compiling unicode_util_compat483===> Analyzing applications...484===> Compiling idna485===> Analyzing applications...486===> Compiling telemetry487==> db_connection488Compiling 18 files (.ex)489Generated db_connection app490==> telemetry_metrics491Compiling 7 files (.ex)492 warning: unused require Logger493 │494 391 │ require Logger495 │ ~496 │497 └─ lib/telemetry_metrics.ex:391:3498499Generated telemetry_metrics app500==> ecto501Compiling 56 files (.ex)502Generated ecto app503==> xmlrpc504Compiling 5 files (.ex)505Generated xmlrpc app506==> nerves_compatibility_test507===> Analyzing applications...508===> Compiling cowboy509==> expo510Compiling 2 files (.erl)511Compiling 22 files (.ex)512Generated expo app513==> gettext514Compiling 18 files (.ex)515 warning: unused require Gettext.Macros516 │517 594 │ require Gettext.Macros518 │ ~519 │520 └─ lib/gettext.ex:594:3521522 warning: Kernel.ParallelCompiler.async/1 is deprecated. Use `pmap/2` instead523 │524 426 │ Kernel.ParallelCompiler.async(fn ->525 │ ~526 │527 └─ lib/gettext/compiler.ex:426:39: Gettext.Compiler.compile_po_files/3528529 warning: the following clause is redundant:530531 defp ensure_empty_msgstr!(%Expo.Message.Plural{} = message)532533 it has type:534535 dynamic(%Expo.Message.Plural{})536537 previous clauses have already matched on the following types:538539 %Expo.Message.Singular{}540 %Expo.Message.Plural{}541542 │543 391 │ defp ensure_empty_msgstr!(%Message.Plural{} = message) do544 │ ~545 │546 └─ lib/gettext/extractor.ex:391:8: Gettext.Extractor.ensure_empty_msgstr!/1547548Generated gettext app549==> phoenix_pubsub550Compiling 12 files (.ex)551Generated phoenix_pubsub app552==> slugify553Compiling 1 file (.ex)554Generated slugify app555==> nerves_compatibility_test556===> Analyzing applications...557===> Compiling certifi558==> plug559Compiling 1 file (.erl)560Compiling 42 files (.ex)561Generated plug app562==> phoenix_html563Compiling 8 files (.ex)564 warning: using single-quoted strings to represent charlists is deprecated.565 Use ~c"" if you indeed want a charlist or use "" instead.566 You may run "mix format --migrate" to change all single-quoted567 strings to use the ~c sigil and fix this warning.568 │569 12 │ @anno (if :erlang.system_info(:otp_release) >= '19' do570 │ ~571 │572 └─ lib/phoenix_html/engine.ex:12:50573574 warning: the 1st pattern in clause will never match:575576 60577578 because it is expected to receive type:579580 dynamic(empty_list() or non_empty_list(term(), term()))581582 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())583584 type warning found at:585 │586 56 │ def to_iodata(?<), do: "<"587 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~588 │589 └─ lib/phoenix_html/safe.ex:56: Phoenix.HTML.Safe.List.to_iodata/1590591 warning: the 1st pattern in clause will never match:592593 62594595 because it is expected to receive type:596597 dynamic(empty_list() or non_empty_list(term(), term()))598599 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())600601 type warning found at:602 │603 57 │ def to_iodata(?>), do: ">"604 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~605 │606 └─ lib/phoenix_html/safe.ex:57: Phoenix.HTML.Safe.List.to_iodata/1607608 warning: the 1st pattern in clause will never match:609610 38611612 because it is expected to receive type:613614 dynamic(empty_list() or non_empty_list(term(), term()))615616 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())617618 type warning found at:619 │620 58 │ def to_iodata(?&), do: "&"621 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~622 │623 └─ lib/phoenix_html/safe.ex:58: Phoenix.HTML.Safe.List.to_iodata/1624625 warning: the 1st pattern in clause will never match:626627 34628629 because it is expected to receive type:630631 dynamic(empty_list() or non_empty_list(term(), term()))632633 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())634635 type warning found at:636 │637 59 │ def to_iodata(?"), do: """638 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~639 │640 └─ lib/phoenix_html/safe.ex:59: Phoenix.HTML.Safe.List.to_iodata/1641642 warning: the 1st pattern in clause will never match:643644 39645646 because it is expected to receive type:647648 dynamic(empty_list() or non_empty_list(term(), term()))649650 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())651652 type warning found at:653 │654 60 │ def to_iodata(?'), do: "'"655 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~656 │657 └─ lib/phoenix_html/safe.ex:60: Phoenix.HTML.Safe.List.to_iodata/1658659 warning: the 1st pattern in clause will never match:660661 {:safe, data}662663 because it is expected to receive type:664665 dynamic(empty_list() or non_empty_list(term(), term()))666667 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())668669 type warning found at:670 │671 76 │ def to_iodata({:safe, data}) do672 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~673 │674 └─ lib/phoenix_html/safe.ex:76: Phoenix.HTML.Safe.List.to_iodata/1675676 warning: the following clause is redundant:677678 def to_iodata(other)679680 it has type:681682 dynamic(empty_list() or non_empty_list(term(), term()))683684 previous clauses have already matched on the following types:685686 non_empty_list(term(), term())687 empty_list()688689 │690 80 │ def to_iodata(other) do691 │ ~692 │693 └─ lib/phoenix_html/safe.ex:80:7: Phoenix.HTML.Safe.List.to_iodata/1694695 warning: the 1st pattern in clause will never match:696697 h698699 because it is expected to receive type:700701 dynamic(empty_list() or non_empty_list(term(), term()))702703 where "h" was given the type:704705 # type: integer()706 # from: lib/phoenix_html/safe.ex:62:25707 is_integer(h)708709 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())710711 type warning found at:712 │713 62 │ def to_iodata(h) when is_integer(h) and h <= 255 do714 │ ~715 │716 └─ lib/phoenix_html/safe.ex:62:17: Phoenix.HTML.Safe.List.to_iodata/1717718 warning: the 1st pattern in clause will never match:719720 h721722 because it is expected to receive type:723724 dynamic(empty_list() or non_empty_list(term(), term()))725726 where "h" was given the type:727728 # type: integer()729 # from: lib/phoenix_html/safe.ex:66:25730 is_integer(h)731732 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())733734 type warning found at:735 │736 66 │ def to_iodata(h) when is_integer(h) do737 │ ~738 │739 └─ lib/phoenix_html/safe.ex:66:17: Phoenix.HTML.Safe.List.to_iodata/1740741 warning: the 1st pattern in clause will never match:742743 h744745 because it is expected to receive type:746747 dynamic(empty_list() or non_empty_list(term(), term()))748749 where "h" was given the type:750751 # type: binary()752 # from: lib/phoenix_html/safe.ex:72:25753 is_binary(h)754755 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())756757 type warning found at:758 │759 72 │ def to_iodata(h) when is_binary(h) do760 │ ~761 │762 └─ lib/phoenix_html/safe.ex:72:17: Phoenix.HTML.Safe.List.to_iodata/1763764Generated phoenix_html app765warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"766 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2767 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1768 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5769 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2770 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4771 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2772773==> postgrex774Compiling 70 files (.ex)775Generated postgrex app776==> ecto_sql777Compiling 25 files (.ex)778Generated ecto_sql app779warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"780 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2781 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1782 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5783 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2784 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4785 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2786787==> phoenix_ecto788Compiling 7 files (.ex)789Generated phoenix_ecto app790==> nerves_compatibility_test791===> Analyzing applications...792===> Compiling parse_trans793==> uboot_env794Compiling 5 files (.ex)795Generated uboot_env app796==> nerves_compatibility_test797===> Analyzing applications...798===> Compiling metrics799===> Analyzing applications...800===> Compiling hackney801 ┌─ src/hackney_trace.erl:802 │803 132 │ (catch io:format(standard_io, "stop trace at ~s~n", [format_timestamp(Timestamp)])),804 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.805Compile directive 'nowarn_deprecated_catch' can be used to suppress806warnings in selected modules.807808 ┌─ src/hackney_trace.erl:809 │810 139 │ (catch io:format(Fd, "stop trace at ~s~n", [format_timestamp(Timestamp)])),811 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.812Compile directive 'nowarn_deprecated_catch' can be used to suppress813warnings in selected modules.814815 ┌─ src/hackney_trace.erl:816 │817 146 │ (catch io:format(Fd, "stop trace at ~s~n", [format_timestamp(Timestamp)])),818 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.819Compile directive 'nowarn_deprecated_catch' can be used to suppress820warnings in selected modules.821822 ┌─ src/hackney_trace.erl:823 │824 147 │ (catch file:close(Fd)),825 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.826Compile directive 'nowarn_deprecated_catch' can be used to suppress827warnings in selected modules.828829 ┌─ src/hackney_trace.erl:830 │831 154 │ (catch io:format(Fd, "stop trace at ~s~n", [format_timestamp(Timestamp)])),832 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.833Compile directive 'nowarn_deprecated_catch' can be used to suppress834warnings in selected modules.835836 ┌─ src/hackney_trace.erl:837 │838 155 │ (catch file:close(Fd)),839 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.840Compile directive 'nowarn_deprecated_catch' can be used to suppress841warnings in selected modules.842843 ┌─ src/hackney_trace.erl:844 │845 161 │ (catch print_hackney_trace(Fd, Sev, Timestamp, Who,846 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.847Compile directive 'nowarn_deprecated_catch' can be used to suppress848warnings in selected modules.849850 ┌─ src/hackney_trace.erl:851 │852 165 │ (catch print_trace(Fd, Event)),853 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.854Compile directive 'nowarn_deprecated_catch' can be used to suppress855warnings in selected modules.856857858 ┌─ src/hackney_pool.erl:859 │860 80 │ case catch gen_server:call(Pool, {checkout, Connection, Requester, RequestRef}, CheckoutTimeout) of861 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.862Compile directive 'nowarn_deprecated_catch' can be used to suppress863warnings in selected modules.864865 ┌─ src/hackney_pool.erl:866 │867 101 │ _ = catch hackney_connection:close(Connection, Socket),868 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.869Compile directive 'nowarn_deprecated_catch' can be used to suppress870warnings in selected modules.871872 ┌─ src/hackney_pool.erl:873 │874 130 │ _ = catch hackney_connection:close(Connection, Socket),875 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.876Compile directive 'nowarn_deprecated_catch' can be used to suppress877warnings in selected modules.878879 ┌─ src/hackney_pool.erl:880 │881 134 │ catch hackney_connection:close(Connection, Socket),882 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.883Compile directive 'nowarn_deprecated_catch' can be used to suppress884warnings in selected modules.885886 ┌─ src/hackney_pool.erl:887 │888 319 │ catch Transport:close(Socket),889 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.890Compile directive 'nowarn_deprecated_catch' can be used to suppress891warnings in selected modules.892893 ┌─ src/hackney_pool.erl:894 │895 417 │ case catch hackney_connection:controlling_process(Connection, S, self()) of896 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.897Compile directive 'nowarn_deprecated_catch' can be used to suppress898warnings in selected modules.899900 ┌─ src/hackney_pool.erl:901 │902 423 │ _ = catch hackney_connection:close(Connection, S),903 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.904Compile directive 'nowarn_deprecated_catch' can be used to suppress905warnings in selected modules.906907 ┌─ src/hackney_pool.erl:908 │909 444 │ catch hackney_connection:close(Connection, Socket),910 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.911Compile directive 'nowarn_deprecated_catch' can be used to suppress912warnings in selected modules.913914 ┌─ src/hackney_pool.erl:915 │916 543 │ _ = (catch hackney_connection:close(Connection, Socket)),917 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.918Compile directive 'nowarn_deprecated_catch' can be used to suppress919warnings in selected modules.920921922 ┌─ src/hackney_manager.erl:923 │924 114 │ catch ets:delete(?MODULE, Ref),925 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.926Compile directive 'nowarn_deprecated_catch' can be used to suppress927warnings in selected modules.928929 ┌─ src/hackney_manager.erl:930 │931 125 │ catch Transport:close(Socket);932 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.933Compile directive 'nowarn_deprecated_catch' can be used to suppress934warnings in selected modules.935936 ┌─ src/hackney_manager.erl:937 │938 129 │ catch Handler:checkin(SocketRef, Socket)939 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.940Compile directive 'nowarn_deprecated_catch' can be used to suppress941warnings in selected modules.942943 ┌─ src/hackney_manager.erl:944 │945 133 │ catch Transport:controlling_process(Socket, self()),946 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.947Compile directive 'nowarn_deprecated_catch' can be used to suppress948warnings in selected modules.949950 ┌─ src/hackney_manager.erl:951 │952 134 │ catch Transport:close(Socket),953 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.954Compile directive 'nowarn_deprecated_catch' can be used to suppress955warnings in selected modules.956957 ┌─ src/hackney_manager.erl:958 │959 227 │ catch ets:delete(?MODULE, Ref),960 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.961Compile directive 'nowarn_deprecated_catch' can be used to suppress962warnings in selected modules.963964 ┌─ src/hackney_manager.erl:965 │966 255 │ catch ets:delete(?MODULE, Ref),967 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.968Compile directive 'nowarn_deprecated_catch' can be used to suppress969warnings in selected modules.970971 ┌─ src/hackney_manager.erl:972 │973 269 │ catch Transport:controlling_process(Socket, self()),974 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.975Compile directive 'nowarn_deprecated_catch' can be used to suppress976warnings in selected modules.977978 ┌─ src/hackney_manager.erl:979 │980 270 │ catch Transport:close(Socket),981 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.982Compile directive 'nowarn_deprecated_catch' can be used to suppress983warnings in selected modules.984985 ┌─ src/hackney_manager.erl:986 │987 383 │ catch unlink(Stream),988 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.989Compile directive 'nowarn_deprecated_catch' can be used to suppress990warnings in selected modules.991992 ┌─ src/hackney_manager.erl:993 │994 416 │ catch ets:delete(?REFS, Ref),995 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.996Compile directive 'nowarn_deprecated_catch' can be used to suppress997warnings in selected modules.998999 ┌─ src/hackney_manager.erl:1000 │1001 426 │ catch ets:delete(?REFS, Ref),1002 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1003Compile directive 'nowarn_deprecated_catch' can be used to suppress1004warnings in selected modules.10051006 ┌─ src/hackney_manager.erl:1007 │1008 470 │ case catch hackney_stream:start_link(StreamTo2, Ref, Client) of1009 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1010Compile directive 'nowarn_deprecated_catch' can be used to suppress1011warnings in selected modules.10121013 ┌─ src/hackney_manager.erl:1014 │1015 487 │ catch Transport:close(Socket),1016 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1017Compile directive 'nowarn_deprecated_catch' can be used to suppress1018warnings in selected modules.10191020 ┌─ src/hackney_manager.erl:1021 │1022 543 │ catch ets:delete(?REFS, Ref),1023 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1024Compile directive 'nowarn_deprecated_catch' can be used to suppress1025warnings in selected modules.10261027 ┌─ src/hackney_manager.erl:1028 │1029 544 │ catch ets:delete(?MODULE, Ref),1030 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1031Compile directive 'nowarn_deprecated_catch' can be used to suppress1032warnings in selected modules.10331034 ┌─ src/hackney_manager.erl:1035 │1036 559 │ catch ets:delete(?REFS, Ref),1037 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1038Compile directive 'nowarn_deprecated_catch' can be used to suppress1039warnings in selected modules.10401041 ┌─ src/hackney_manager.erl:1042 │1043 560 │ catch ets:delete(?MODULE, Ref),1044 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1045Compile directive 'nowarn_deprecated_catch' can be used to suppress1046warnings in selected modules.10471048 ┌─ src/hackney_manager.erl:1049 │1050 618 │ catch unlink(Pid),1051 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1052Compile directive 'nowarn_deprecated_catch' can be used to suppress1053warnings in selected modules.105410551056 ┌─ src/hackney_happy.erl:1057 │1058 101 │ catch exit(Pid, normal),1059 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1060Compile directive 'nowarn_deprecated_catch' can be used to suppress1061warnings in selected modules.10621063 ┌─ src/hackney_happy.erl:1064 │1065 128 │ case (catch inet_res:getbyname(Hostname, Type)) of1066 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1067Compile directive 'nowarn_deprecated_catch' can be used to suppress1068warnings in selected modules.10691070 ┌─ src/hackney_happy.erl:1071 │1072 151 │ case (catch inet:gethostbyname(Hostname, InetType)) of1073 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1074Compile directive 'nowarn_deprecated_catch' can be used to suppress1075warnings in selected modules.107610771078==> tesla1079Compiling 57 files (.ex)1080Generated tesla app1081==> oauth21082Compiling 13 files (.ex)1083Generated oauth2 app1084==> property_table1085Compiling 8 files (.ex)1086Generated property_table app1087==> nerves_uevent1088 CC uevent.o1089 LD uevent1090Compiling 5 files (.ex)1091Generated nerves_uevent app1092==> nerves_runtime1093Compiling 14 files (.ex)1094Generated nerves_runtime app1095==> toolshed1096Compiling 5 files (.ex)1097Generated toolshed app1098==> nerves_compatibility_test1099===> Analyzing applications...1100===> Compiling cowboy_telemetry1101==> plug_cowboy1102Compiling 5 files (.ex)1103Generated plug_cowboy app1104warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1105 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21106 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11107 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51108 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21109 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41110 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/211111112==> phoenix1113Compiling 66 files (.ex)1114 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 operator1115 │1116 194 │ <<attr::size(prefix)-binary, ":unique">> -> attr1117 │ ~1118 │1119 └─ lib/mix/phoenix/schema.ex:194:20: Mix.Phoenix.Schema.drop_unique/111201121 warning: using single-quoted strings to represent charlists is deprecated.1122 Use ~c"" if you indeed want a charlist or use "" instead.1123 You may run "mix format --migrate" to change all single-quoted1124 strings to use the ~c sigil and fix this warning.1125 │1126 258 │ notBefore: {:utcTime, '#{not_before}000000Z'},1127 │ ~1128 │1129 └─ lib/mix/tasks/phx.gen.cert.ex:258:3311301131 warning: using single-quoted strings to represent charlists is deprecated.1132 Use ~c"" if you indeed want a charlist or use "" instead.1133 You may run "mix format --migrate" to change all single-quoted1134 strings to use the ~c sigil and fix this warning.1135 │1136 259 │ notAfter: {:utcTime, '#{not_after}000000Z'}1137 │ ~1138 │1139 └─ lib/mix/tasks/phx.gen.cert.ex:259:3211401141 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1142 │1143 55 │ Logger.warn(1144 │ ~1145 │1146 └─ lib/phoenix/code_reloader/server.ex:55:20: Phoenix.CodeReloader.Server.handle_call/311471148 warning: unused require Logger1149 │1150 9 │ require Logger1151 │ ~1152 │1153 └─ lib/phoenix/config.ex:9:311541155 warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.11561157 This error happens when you have function calls without parentheses inside keywords. For example:11581159 function(arg, one: nested_call a, b, c)1160 function(arg, one: if expr, do: :this, else: :that)11611162 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:11631164 function(arg, one: if(expr, do: :this, else: :that))1165 function(arg, one: nested_call(a, b, c))11661167 Ambiguity found at:1168 │1169 1002 │ defp get_disposition_type(other), do: raise ArgumentError, "expected :disposition to be :attachment or :inline, got: #{inspect(other)}"1170 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1171 │1172 └─ lib/phoenix/controller.ex:100211731174 warning: unused require Logger1175 │1176 240 │ require Logger1177 │ ~1178 │1179 └─ lib/phoenix/endpoint.ex:240:311801181 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1182 │1183 1013 │ Logger.warn "send_download/3 has been invoked during an AJAX request. " <>1184 │ ~1185 │1186 └─ lib/phoenix/controller.ex:1013:14: Phoenix.Controller.warn_if_ajax/111871188 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1189 │1190 82 │ Logger.warn "Phoenix.Endpoint.CowboyAdapter is deprecated and it will be removed in next versions. " <>1191 │ ~1192 │1193 └─ lib/phoenix/endpoint/cowboy_adapter.ex:82:12: Phoenix.Endpoint.CowboyAdapter.child_specs/211941195 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1196 │1197 71 │ Logger.warn("no configuration found for otp_app #{inspect(otp_app)} and module #{inspect(mod)}")1198 │ ~1199 │1200 └─ lib/phoenix/endpoint/supervisor.ex:71:20: Phoenix.Endpoint.Supervisor.init/112011202 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1203 │1204 95 │ Logger.warn(":instrumenters configuration for #{inspect(mod)} is deprecated and has no effect")1205 │ ~1206 │1207 └─ lib/phoenix/endpoint/supervisor.ex:95:14: Phoenix.Endpoint.Supervisor.init/112081209 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1210 │1211 116 │ Logger.warn """1212 │ ~1213 │1214 └─ lib/phoenix/endpoint/supervisor.ex:116:14: Phoenix.Endpoint.Supervisor.pubsub_children/212151216 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1217 │1218 166 │ Logger.warn "Phoenix.Endpoint.CowboyHandler is deprecated, please use Phoenix.Endpoint.CowboyAdapter instead"1219 │ ~1220 │1221 └─ lib/phoenix/endpoint/supervisor.ex:166:16: Phoenix.Endpoint.Supervisor.user_adapter/212221223 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1224 │1225 170 │ Logger.warn "The :handler option in #{inspect endpoint} is deprecated, please use :adapter instead"1226 │ ~1227 │1228 └─ lib/phoenix/endpoint/supervisor.ex:170:16: Phoenix.Endpoint.Supervisor.user_adapter/212291230 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1231 │1232 346 │ Logger.warn("url: [host: ...] configuration value #{inspect(host)} for #{inspect(endpoint)} is invalid")1233 │ ~1234 │1235 └─ lib/phoenix/endpoint/supervisor.ex:346:14: Phoenix.Endpoint.Supervisor.build_url/212361237 warning: unused require Phoenix.Endpoint1238 │1239 6 │ require Phoenix.Endpoint1240 │ ~1241 │1242 └─ lib/phoenix/controller.ex:6:312431244 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 operator1245 │1246 46 │ <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix1247 │ ~1248 │1249 └─ lib/phoenix/naming.ex:46:29: Phoenix.Naming.unsuffix/212501251 warning: using single-quoted strings to represent charlists is deprecated.1252 Use ~c"" if you indeed want a charlist or use "" instead.1253 You may run "mix format --migrate" to change all single-quoted1254 strings to use the ~c sigil and fix this warning.1255 │1256 411 │ @anno (if :erlang.system_info(:otp_release) >= '19' do1257 │ ~1258 │1259 └─ lib/phoenix/router.ex:411:5012601261 warning: unused require Phoenix.Endpoint1262 │1263 19 │ require Phoenix.Endpoint1264 │ ~1265 │1266 └─ lib/phoenix/endpoint/render_errors.ex:19:312671268 warning: using single-quoted strings to represent charlists is deprecated.1269 Use ~c"" if you indeed want a charlist or use "" instead.1270 You may run "mix format --migrate" to change all single-quoted1271 strings to use the ~c sigil and fix this warning.1272 │1273 8 │ @anno (if :erlang.system_info(:otp_release) >= '19' do1274 │ ~1275 │1276 └─ lib/phoenix/router/helpers.ex:8:5012771278 warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.12791280 This error happens when you have function calls without parentheses inside keywords. For example:12811282 function(arg, one: nested_call a, b, c)1283 function(arg, one: if expr, do: :this, else: :that)12841285 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:12861287 function(arg, one: if(expr, do: :this, else: :that))1288 function(arg, one: nested_call(a, b, c))12891290 Ambiguity found at:1291 │1292 71 │ unless actions -- supported_actions == [], do: raise ArgumentError, """1293 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1294 │1295 └─ lib/phoenix/router/resource.ex:7112961297 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1298 │1299 734 │ Logger.warn fn -> "Ignoring unmatched topic \"#{topic}\" in #{inspect(handler)}" end1300 │ ~1301 │1302 └─ lib/phoenix/socket.ex:734:12: Phoenix.Socket.encode_ignore/213031304 warning: unused require Phoenix.Endpoint1305 │1306 6 │ require Phoenix.Endpoint1307 │ ~1308 │1309 └─ lib/phoenix/channel/server.ex:6:313101311 warning: unused require Phoenix.Endpoint1312 │1313 188 │ require Phoenix.Endpoint1314 │ ~1315 │1316 └─ lib/phoenix/socket.ex:188:313171318 warning: unused require Logger1319 │1320 93 │ require Logger1321 │ ~1322 │1323 └─ lib/phoenix/token.ex:93:313241325 warning: using single-quoted strings to represent charlists is deprecated.1326 Use ~c"" if you indeed want a charlist or use "" instead.1327 You may run "mix format --migrate" to change all single-quoted1328 strings to use the ~c sigil and fix this warning.1329 │1330 178 │ @anno (if :erlang.system_info(:otp_release) >= '19' do1331 │ ~1332 │1333 └─ lib/phoenix/view.ex:178:5013341335 warning: a struct for Plug.Conn is expected on struct update:13361337 %Plug.Conn{conn | state: :sent}13381339 but got type:13401341 dynamic()13421343 where "conn" was given the type:13441345 # type: dynamic()1346 # from: lib/phoenix/endpoint/render_errors.ex:57:171347 conn13481349 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"13501351 type warning found at:1352 │1353 61 │ %Plug.Conn{conn | state: :sent}1354 │ ~1355 │1356 └─ lib/phoenix/endpoint/render_errors.ex:61:9: Phoenix.Endpoint.RenderErrors.__catch__/513571358 warning: a struct for Plug.Conn is expected on struct update:13591360 %Plug.Conn{conn | query_params: %{}, params: %{}}13611362 but got type:13631364 dynamic(%{..., params: %Plug.Conn.Unfetched{}})13651366 where "conn" was given the types:13671368 # type: dynamic(%{..., params: term()})1369 # from: lib/phoenix/endpoint/render_errors.ex:124:171370 conn.params13711372 # type: dynamic(%{..., params: %Plug.Conn.Unfetched{}})1373 # from: lib/phoenix/endpoint/render_errors.ex:124:171374 conn.params13751376 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"13771378 type warning found at:1379 │1380 125 │ %Plug.Conn.Unfetched{} -> %Plug.Conn{conn | query_params: %{}, params: %{}}1381 │ ~1382 │1383 └─ lib/phoenix/endpoint/render_errors.ex:125:35: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/113841385 warning: a struct for Plug.Conn is expected on struct update:13861387 %Plug.Conn{conn | query_params: %{}, params: params}13881389 but got type:13901391 dynamic(%{..., params: not %Plug.Conn.Unfetched{}})13921393 where "conn" was given the types:13941395 # type: dynamic(%{..., params: term()})1396 # from: lib/phoenix/endpoint/render_errors.ex:124:171397 conn.params13981399 # type: dynamic(%{..., params: not %Plug.Conn.Unfetched{}})1400 # from: lib/phoenix/endpoint/render_errors.ex:124:171401 conn.params14021403 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"14041405 type warning found at:1406 │1407 126 │ params -> %Plug.Conn{conn | query_params: %{}, params: params}1408 │ ~1409 │1410 └─ lib/phoenix/endpoint/render_errors.ex:126:19: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/114111412 warning: incompatible types given to socket_children/1:14131414 socket_children(mod)14151416 given types:14171418 -dynamic(atom())-14191420 but expected one of:14211422 %{..., __sockets__: term()}14231424 where "mod" was given the types:14251426 # type: dynamic(atom() or binary())1427 # from: lib/phoenix/endpoint/supervisor.ex:64:411428 defaults(otp_app, mod)14291430 # type: dynamic(atom())1431 # from: lib/phoenix/endpoint/supervisor.ex:68:161432 mod.init(:supervisor, env_conf)14331434 type warning found at:1435 │1436 105 │ socket_children(mod) ++1437 │ ~1438 │1439 └─ lib/phoenix/endpoint/supervisor.ex:105:7: Phoenix.Endpoint.Supervisor.init/114401441 warning: a struct for Plug.Conn is expected on struct update:14421443 %Plug.Conn{conn | params: params}14441445 but got type:14461447 dynamic(%{..., params: map()})14481449 where "conn" was given the type:14501451 # type: dynamic(%{..., params: map()})1452 # from: lib/phoenix/controller.ex:1040:171453 Map.get(conn.params, required_key)14541455 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"14561457 type warning found at:1458 │1459 1047 │ %Plug.Conn{conn | params: params}1460 │ ~1461 │1462 └─ lib/phoenix/controller.ex:1047:5: Phoenix.Controller.scrub_params/214631464Generated phoenix app1465warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1466 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21467 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11468 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51469 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21470 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41471 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/214721473==> phoenix_live_view1474Compiling 22 files (.ex)1475 warning: unused require Logger1476 │1477 25 │ require Logger1478 │ ~1479 │1480 └─ lib/phoenix_live_view/socket.ex:25:314811482 warning: unused require Phoenix.ChannelTest1483 │1484 141 │ require Phoenix.ChannelTest1485 │ ~1486 │1487 └─ lib/phoenix_live_view/test/live_view_test.ex:141:314881489 warning: unused require Phoenix.ConnTest1490 │1491 140 │ require Phoenix.ConnTest1492 │ ~1493 │1494 └─ lib/phoenix_live_view/test/live_view_test.ex:140:314951496 warning: unused require Phoenix.ChannelTest1497 │1498 4 │ require Phoenix.ChannelTest1499 │ ~1500 │1501 └─ lib/phoenix_live_view/test/upload_client.ex:4:315021503 warning: unused require Logger1504 │1505 6 │ require Logger1506 │ ~1507 │1508 └─ lib/phoenix_live_view/upload_channel.ex:6:315091510 warning: a struct for Phoenix.LiveView.Socket is expected on struct update:15111512 %Phoenix.LiveView.Socket{1513 socket1514 | private: Map.put(socket.private, :phoenix_live_layout, {mod, template})1515 }15161517 but got type:15181519 dynamic()15201521 where "socket" was given the type:15221523 # type: dynamic()1524 # from: lib/phoenix_live_view/utils.ex:464:211525 socket15261527 when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"15281529 type warning found at:1530 │1531 465 │ %Socket{socket | private: Map.put(socket.private, :phoenix_live_layout, {mod, template})}1532 │ ~1533 │1534 └─ lib/phoenix_live_view/utils.ex:465:5: Phoenix.LiveView.Utils.do_mount_opt/315351536 warning: a struct for Phoenix.LiveView.Socket is expected on struct update:15371538 %Phoenix.LiveView.Socket{socket | private: Map.put(socket.private, :phoenix_live_layout, false)}15391540 but got type:15411542 dynamic()15431544 where "socket" was given the type:15451546 # type: dynamic()1547 # from: lib/phoenix_live_view/utils.ex:468:211548 socket15491550 when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"15511552 type warning found at:1553 │1554 469 │ %Socket{socket | private: Map.put(socket.private, :phoenix_live_layout, false)}1555 │ ~1556 │1557 └─ lib/phoenix_live_view/utils.ex:469:5: Phoenix.LiveView.Utils.do_mount_opt/315581559 warning: a struct for Phoenix.LiveView.Socket is expected on struct update:15601561 %Phoenix.LiveView.Socket{1562 socket1563 | assigns: Map.merge(temp_assigns, socket.assigns),1564 private: Map.put(socket.private, :temporary_assigns, temp_assigns)1565 }15661567 but got type:15681569 dynamic()15701571 where "socket" was given the type:15721573 # type: dynamic()1574 # from: lib/phoenix_live_view/utils.ex:478:211575 socket15761577 when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"15781579 type warning found at:1580 │1581 485 │ %Socket{1582 │ ~1583 │1584 └─ lib/phoenix_live_view/utils.ex:485:5: Phoenix.LiveView.Utils.do_mount_opt/315851586 warning: a struct for Phoenix.LiveView.Socket is expected on struct update:15871588 %Phoenix.LiveView.Socket{1589 socket1590 | assigns: %Phoenix.LiveView.Socket.AssignsNotInSocket{__assigns__: assigns}1591 }15921593 but got type:15941595 dynamic(%{..., assigns: term(), changed: term()})15961597 where "socket" was given the type:15981599 # type: dynamic(%{..., assigns: term(), changed: term()})1600 # from: lib/phoenix_live_view/utils.ex:496:611601 %{assigns: assigns, changed: changed} = socket16021603 when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"16041605 type warning found at:1606 │1607 497 │ socket = %Socket{socket | assigns: %Socket.AssignsNotInSocket{__assigns__: assigns}}1608 │ ~1609 │1610 └─ lib/phoenix_live_view/utils.ex:497:14: Phoenix.LiveView.Utils.render_assigns/116111612 warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:16131614 %Phoenix.LiveView.UploadEntry{entry | preflighted?: true}16151616 but got type:16171618 dynamic()16191620 where "entry" was given the type:16211622 # type: dynamic()1623 # from: lib/phoenix_live_view/upload_config.ex:341:281624 entry <- conf.entries16251626 when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"16271628 type warning found at:1629 │1630 341 │ | entries: for(entry <- conf.entries, do: %UploadEntry{entry | preflighted?: true})1631 │ ~1632 │1633 └─ lib/phoenix_live_view/upload_config.ex:341:49: Phoenix.LiveView.UploadConfig.mark_preflighted/116341635 warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:16361637 %Phoenix.LiveView.UploadEntry{entry | valid?: true, uuid: generate_uuid()}16381639 but got type:16401641 dynamic()16421643 where "entry" was given the type:16441645 # type: dynamic()1646 # from: lib/phoenix_live_view/upload_config.ex:541:301647 entry16481649 when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"16501651 type warning found at:1652 │1653 542 │ entry = %UploadEntry{entry | valid?: true, uuid: generate_uuid()}1654 │ ~1655 │1656 └─ lib/phoenix_live_view/upload_config.ex:542:13: Phoenix.LiveView.UploadConfig.put_valid_entry/216571658 warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:16591660 %Phoenix.LiveView.UploadEntry{entry | valid?: false}16611662 but got type:16631664 dynamic()16651666 where "entry" was given the type:16671668 # type: dynamic()1669 # from: lib/phoenix_live_view/upload_config.ex:554:321670 entry16711672 when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"16731674 type warning found at:1675 │1676 555 │ entry = %UploadEntry{entry | valid?: false}1677 │ ~1678 │1679 └─ lib/phoenix_live_view/upload_config.ex:555:13: Phoenix.LiveView.UploadConfig.put_invalid_entry/316801681 warning: Logger.disable/1 is deprecated. Use Logger.put_process_level(pid, :none) instead1682 │1683 56 │ Logger.disable(self())1684 │ ~1685 │1686 └─ lib/phoenix_live_view/test/client_proxy.ex:56:12: Phoenix.LiveViewTest.ClientProxy.init/116871688 warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:16891690 %Phoenix.LiveView.UploadEntry{entry | cancelled?: true}16911692 but got type:16931694 dynamic()16951696 where "entry" was given the type:16971698 # type: dynamic()1699 # from: lib/phoenix_live_view/upload_config.ex:638:421700 entry17011702 when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"17031704 type warning found at:1705 │1706 638 │ update_entry(conf, entry.ref, fn entry -> %UploadEntry{entry | cancelled?: true} end)1707 │ ~1708 │1709 └─ lib/phoenix_live_view/upload_config.ex:638:51: Phoenix.LiveView.UploadConfig.cancel_entry/217101711 warning: a struct for Phoenix.LiveViewTest.ClientProxy is expected on struct update:17121713 %Phoenix.LiveViewTest.ClientProxy{view | rendered: rendered}17141715 but got type:17161717 dynamic(%{..., rendered: term()})17181719 where "view" was given the type:17201721 # type: dynamic(%{..., rendered: term()})1722 # from: lib/phoenix_live_view/test/client_proxy.ex:600:241723 Phoenix.LiveViewTest.DOM.merge_diff(view.rendered, diff)17241725 when defining the variable "view", you must also pattern match on "%Phoenix.LiveViewTest.ClientProxy{}"17261727 type warning found at:1728 │1729 601 │ new_view = %ClientProxy{view | rendered: rendered}1730 │ ~1731 │1732 └─ lib/phoenix_live_view/test/client_proxy.ex:601:20: Phoenix.LiveViewTest.ClientProxy.merge_rendered/317331734 warning: Plug.Conn.Query.decode_pair/2 is deprecated. Use decode_init/0, decode_each/2, and decode_done/2 instead1735 │1736 986 │ Plug.Conn.Query.decode_pair({name, DOM.attribute(selected, "value")}, acc)1737 │ ~1738 │1739 └─ lib/phoenix_live_view/test/client_proxy.ex:986:23: Phoenix.LiveViewTest.ClientProxy.form_defaults/31740 └─ lib/phoenix_live_view/test/client_proxy.ex:991:21: Phoenix.LiveViewTest.ClientProxy.form_defaults/31741 └─ lib/phoenix_live_view/test/client_proxy.ex:1001:27: Phoenix.LiveViewTest.ClientProxy.form_defaults/31742 └─ lib/phoenix_live_view/test/client_proxy.ex:1010:25: Phoenix.LiveViewTest.ClientProxy.form_defaults/317431744 warning: the following clause is redundant:17451746 def to_iodata(%_{} = struct)17471748 it has type:17491750 dynamic(%Phoenix.LiveView.Rendered{})17511752 previous clauses have already matched on the following types:17531754 %Phoenix.LiveView.Rendered{}17551756 │1757 126 │ def to_iodata(%_{} = struct) do1758 │ ~1759 │1760 └─ lib/phoenix_live_view/engine.ex:126:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/117611762 warning: the 1st pattern in clause will never match:17631764 nil17651766 because it is expected to receive type:17671768 dynamic(%Phoenix.LiveView.Rendered{})17691770 hint: defimpl for Phoenix.LiveView.Rendered requires its callbacks to match exclusively on %Phoenix.LiveView.Rendered{}17711772 type warning found at:1773 │1774 130 │ def to_iodata(nil) do1775 │ ~~~~~~~~~~~~~~~~~~~~~1776 │1777 └─ lib/phoenix_live_view/engine.ex:130: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/117781779 warning: the following clause is redundant:17801781 def to_iodata(other)17821783 it has type:17841785 dynamic(%Phoenix.LiveView.Rendered{})17861787 previous clauses have already matched on the following types:17881789 %Phoenix.LiveView.Rendered{}17901791 │1792 134 │ def to_iodata(other) do1793 │ ~1794 │1795 └─ lib/phoenix_live_view/engine.ex:134:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/117961797Generated phoenix_live_view app1798warning: Phoenix now requires you to explicitly list which engine to use1799for Phoenix JSON encoding. We recommend everyone to upgrade to1800Jason by setting in your config/config.exs:18011802 config :phoenix, :json_library, Jason18031804And then adding {:jason, "~> 1.0"} as a dependency.18051806If instead you would rather continue using Poison, then add to1807your config/config.exs:18081809 config :phoenix, :json_library, Poison18101811 (phoenix 1.5.15) lib/phoenix.ex:38: Phoenix.start/21812 (kernel 11.0.4) application_master.erl:299: :application_master.start_it_old/418131814warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1815 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21816 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11817 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51818 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21819 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41820 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/218211822==> phoenix_live_dashboard1823Compiling 36 files (.ex)1824 warning: using single-quoted strings to represent charlists is deprecated.1825 Use ~c"" if you indeed want a charlist or use "" instead.1826 You may run "mix format --migrate" to change all single-quoted1827 strings to use the ~c sigil and fix this warning.1828 │1829 41 │ '#Port' ++ rest = :erlang.port_to_list(ref)1830 │ ~1831 │1832 └─ lib/phoenix/live_dashboard/helpers.ex:41:518331834 warning: using single-quoted strings to represent charlists is deprecated.1835 Use ~c"" if you indeed want a charlist or use "" instead.1836 You may run "mix format --migrate" to change all single-quoted1837 strings to use the ~c sigil and fix this warning.1838 │1839 49 │ '#Ref' ++ rest = :erlang.ref_to_list(ref)1840 │ ~1841 │1842 └─ lib/phoenix/live_dashboard/helpers.ex:49:518431844warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1845 lib/phoenix/live_dashboard/pages/home_page.ex:176: Phoenix.LiveDashboard.HomePage.render/118461847warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1848 lib/phoenix/live_dashboard/pages/home_page.ex:184: Phoenix.LiveDashboard.HomePage.render/118491850warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1851 lib/phoenix/live_dashboard/pages/home_page.ex:192: Phoenix.LiveDashboard.HomePage.render/118521853warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1854 lib/phoenix/live_dashboard/pages/os_mon_page.ex:213: Phoenix.LiveDashboard.OSMonPage.render/118551856warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1857 lib/phoenix/live_dashboard/pages/os_mon_page.ex:235: Phoenix.LiveDashboard.OSMonPage.render/118581859 warning: using single-quoted strings to represent charlists is deprecated.1860 Use ~c"" if you indeed want a charlist or use "" instead.1861 You may run "mix format --migrate" to change all single-quoted1862 strings to use the ~c sigil and fix this warning.1863 │1864 397 │ @inet_ports ['tcp_inet', 'udp_inet', 'sctp_inet']1865 │ ~1866 │1867 └─ lib/phoenix/live_dashboard/system_info.ex:397:1618681869 warning: using single-quoted strings to represent charlists is deprecated.1870 Use ~c"" if you indeed want a charlist or use "" instead.1871 You may run "mix format --migrate" to change all single-quoted1872 strings to use the ~c sigil and fix this warning.1873 │1874 397 │ @inet_ports ['tcp_inet', 'udp_inet', 'sctp_inet']1875 │ ~1876 │1877 └─ lib/phoenix/live_dashboard/system_info.ex:397:2818781879 warning: using single-quoted strings to represent charlists is deprecated.1880 Use ~c"" if you indeed want a charlist or use "" instead.1881 You may run "mix format --migrate" to change all single-quoted1882 strings to use the ~c sigil and fix this warning.1883 │1884 397 │ @inet_ports ['tcp_inet', 'udp_inet', 'sctp_inet']1885 │ ~1886 │1887 └─ lib/phoenix/live_dashboard/system_info.ex:397:4018881889 warning: using single-quoted strings to represent charlists is deprecated.1890 Use ~c"" if you indeed want a charlist or use "" instead.1891 You may run "mix format --migrate" to change all single-quoted1892 strings to use the ~c sigil and fix this warning.1893 │1894 543 │ [{'none', 0, 0}] -> []1895 │ ~1896 │1897 └─ lib/phoenix/live_dashboard/system_info.ex:543:1118981899warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1900 lib/phoenix/live_dashboard/page_live.ex:211: Phoenix.LiveDashboard.PageLive.render_page/319011902warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1903 lib/phoenix/live_dashboard/page_live.ex:236: Phoenix.LiveDashboard.PageLive.live_modal/319041905warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1906 lib/phoenix/live_dashboard/components/nav_bar_component.ex:142: Phoenix.LiveDashboard.NavBarComponent.render_content/319071908warning: passing the @socket to live_component is no longer necessary, please remove the socket argument1909 lib/phoenix/live_dashboard/components/card_usage_component.ex:7: Phoenix.LiveDashboard.CardUsageComponent.render/119101911 warning: incompatible types given to Phoenix.LiveView.Helpers.__live_component__/3:19121913 Phoenix.LiveView.Helpers.__live_component__(1914 component.__live__(),1915 Phoenix.LiveDashboard.ModalComponent,1916 nil1917 )19181919 given types:19201921 dynamic(), -Phoenix.LiveDashboard.ModalComponent-, nil19221923 but expected one of:19241925 (1926 %{..., kind: :component, module: term()},1927 empty_list() or map() or non_empty_list(term(), term()),1928 term()1929 )19301931 where "component" (context Phoenix.LiveView.Helpers) was given the types:19321933 # type: dynamic(not %Phoenix.LiveView.Socket{})1934 # from: lib/phoenix/live_dashboard/page_live.ex:2361935 component19361937 # type: dynamic(atom())1938 # from: lib/phoenix/live_dashboard/page_live.ex:2361939 component.__live__()19401941 type warning found at:1942 │1943 236 │ live_component(socket, Phoenix.LiveDashboard.ModalComponent, modal_opts)1944 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1945 │1946 └─ lib/phoenix/live_dashboard/page_live.ex:236: Phoenix.LiveDashboard.PageLive.live_modal/319471948 warning: the following clause will never match:19491950 %{__changed__: changed} when track_changes? ->19511952 because it attempts to match on the result of:19531954 assigns19551956 which has type:19571958 dynamic(%{text: term()})19591960 where "track_changes?" (context Phoenix.LiveView.Engine) was given the type:19611962 # type: dynamic(true)1963 # from: lib/phoenix/live_dashboard/page_live.ex:3121964 track_changes?19651966 type warning found at:1967 │1968 312 │ ~L"""1969 │ ~~~~~1970 │1971 └─ lib/phoenix/live_dashboard/page_live.ex:312: Phoenix.LiveDashboard.PageLive.maybe_link/319721973 warning: the following clause will never match:19741975 %{__changed__: changed} when track_changes? ->19761977 because it attempts to match on the result of:19781979 assigns19801981 which has type:19821983 dynamic(%{more_info_url: term(), text: term()})19841985 where "track_changes?" (context Phoenix.LiveView.Engine) was given the type:19861987 # type: dynamic(true)1988 # from: lib/phoenix/live_dashboard/page_live.ex:3221989 track_changes?19901991 type warning found at:1992 │1993 322 │ ~L"""1994 │ ~~~~~1995 │1996 └─ lib/phoenix/live_dashboard/page_live.ex:322: Phoenix.LiveDashboard.PageLive.maybe_link/319971998 warning: the following clause will never match:19992000 %{__changed__: changed} when track_changes? ->20012002 because it attempts to match on the result of:20032004 assigns20052006 which has type:20072008 dynamic(%{checked_param: binary()})20092010 where "track_changes?" (context Phoenix.LiveView.Engine) was given the type:20112012 # type: dynamic(true)2013 # from: lib/phoenix/live_dashboard/pages/request_logger_page.ex:1782014 track_changes?20152016 type warning found at:2017 │2018 178 │ ~L"""2019 │ ~~~~~2020 │2021 └─ lib/phoenix/live_dashboard/pages/request_logger_page.ex:178: Phoenix.LiveDashboard.RequestLoggerPage.autoscroll_checkbox/120222023 warning: incompatible types given to Phoenix.LiveView.Helpers.__live_component__/3:20242025 Phoenix.LiveView.Helpers.__live_component__(2026 component.__live__(),2027 Phoenix.LiveDashboard.ColorBarComponent,2028 nil2029 )20302031 given types:20322033 dynamic(), -Phoenix.LiveDashboard.ColorBarComponent-, nil20342035 but expected one of:20362037 (2038 %{..., kind: :component, module: term()},2039 empty_list() or map() or non_empty_list(term(), term()),2040 term()2041 )20422043 where "component" (context Phoenix.LiveView.Helpers) was given the types:20442045 # type: dynamic(not %Phoenix.LiveView.Socket{})2046 # from: lib/phoenix/live_dashboard/pages/os_mon_page.ex:1912047 component20482049 # type: dynamic(atom())2050 # from: lib/phoenix/live_dashboard/pages/os_mon_page.ex:1912051 component.__live__()20522053 type warning found at:2054 │2055 191 │ <%= live_component @socket, ColorBarComponent, dom_id: "cpu-#{num_cpu}", data: cpu_usage_sections(usage), title: "CPU #{num_cpu+1}", csp_nonces: @csp_nonces %>2056 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2057 │2058 └─ lib/phoenix/live_dashboard/pages/os_mon_page.ex:191: Phoenix.LiveDashboard.OSMonPage.render/120592060 warning: incompatible types given to Phoenix.LiveView.Helpers.__live_component__/3:20612062 Phoenix.LiveView.Helpers.__live_component__(2063 component.__live__(),2064 Phoenix.LiveDashboard.ChartComponent,2065 nil2066 )20672068 given types:20692070 dynamic(), -Phoenix.LiveDashboard.ChartComponent-, nil20712072 but expected one of:20732074 (2075 %{..., kind: :component, module: term()},2076 empty_list() or map() or non_empty_list(term(), term()),2077 term()2078 )20792080 where "component" (context Phoenix.LiveView.Helpers) was given the types:20812082 # type: dynamic(not %Phoenix.LiveView.Socket{})2083 # from: lib/phoenix/live_dashboard/pages/metrics_page.ex:762084 component20852086 # type: dynamic(atom())2087 # from: lib/phoenix/live_dashboard/pages/metrics_page.ex:762088 component.__live__()20892090 type warning found at:2091 │2092 76 │ <%= live_component @socket, ChartComponent, id: id, metric: metric %>2093 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2094 │2095 └─ lib/phoenix/live_dashboard/pages/metrics_page.ex:76: Phoenix.LiveDashboard.MetricsPage.render_metrics/120962097 warning: incompatible types given to Phoenix.LiveView.Helpers.__live_component__/3:20982099 Phoenix.LiveView.Helpers.__live_component__(2100 component.__live__(),2101 Phoenix.LiveDashboard.ColorBarComponent,2102 nil2103 )21042105 given types:21062107 dynamic(), -Phoenix.LiveDashboard.ColorBarComponent-, nil21082109 but expected one of:21102111 (2112 %{..., kind: :component, module: term()},2113 empty_list() or map() or non_empty_list(term(), term()),2114 term()2115 )21162117 where "component" (context Phoenix.LiveView.Helpers) was given the types:21182119 # type: dynamic(not %Phoenix.LiveView.Socket{})2120 # from: lib/phoenix/live_dashboard/pages/home_page.ex:2062121 component21222123 # type: dynamic(atom())2124 # from: lib/phoenix/live_dashboard/pages/home_page.ex:2062125 component.__live__()21262127 type warning found at:2128 │2129 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" %>2130 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2131 │2132 └─ lib/phoenix/live_dashboard/pages/home_page.ex:206: Phoenix.LiveDashboard.HomePage.render/121332134 warning: Logger.add_backend/1 is deprecated. Use LoggerBackends.add/2 from :logger_backends dependency2135 │2136 8 │ Logger.add_backend(Phoenix.LiveDashboard.LoggerPubSubBackend)2137 │ ~2138 │2139 └─ lib/phoenix/live_dashboard/application.ex:8:12: Phoenix.LiveDashboard.Application.start/221402141 warning: the following clause will never match:21422143 %{__changed__: changed} when track_changes? ->21442145 because it attempts to match on the result of:21462147 assigns21482149 which has type:21502151 dynamic(%{block: term()})21522153 where "track_changes?" (context Phoenix.LiveView.Engine) was given the type:21542155 # type: dynamic(true)2156 # from: lib/phoenix/live_dashboard/helpers.ex:2082157 track_changes?21582159 type warning found at:2160 │2161 208 │ ~L"""2162 │ ~~~~~2163 │2164 └─ lib/phoenix/live_dashboard/helpers.ex:208: Phoenix.LiveDashboard.Helpers.hint/121652166Generated phoenix_live_dashboard app2167==> ecto_network2168Compiling 4 files (.ex)2169 warning: this clause in cond will always match:21702171 address_netmask(inet.address)21722173 since it has type:21742175 integer()21762177 where "inet" was given the type:21782179 # type: dynamic(%Postgrex.INET{})2180 # from: lib/ecto_network/inet.ex:53:292181 %Postgrex.INET{} = inet21822183 type warning found at:2184 │2185 57 │ address_netmask(inet.address) -> %{inet | netmask: address_netmask(inet.address)}2186 │ ~2187 │2188 └─ lib/ecto_network/inet.ex:57:39: EctoNetwork.INET.load/121892190Generated ecto_network app2191==> httpoison2192Compiling 3 files (.ex)2193Generated httpoison app2194warning: the :gettext compiler is no longer required in your mix.exs.21952196Please find the following line in your mix.exs and remove the :gettext entry:21972198 compilers: [..., :gettext, ...] ++ Mix.compilers(),21992200 (gettext 0.26.2) lib/mix/tasks/compile.gettext.ex:5: Mix.Tasks.Compile.Gettext.run/12201 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/52202 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/22203 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/42204 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/22205 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/522062207==> mppm2208Compiling 76 files (.ex)2209 warning: an expression is always required on the right side of ->. Please provide a value after ->2210 │2211 48 │ _ ->2212 │ ~2213 │2214 └─ lib/mppm/application.ex:48:1122152216 warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead2217 │2218 5 │ @root_path Application.get_env(:mppm, :game_servers_root_path)2219 │ ~2220 │2221 └─ lib/mppm/application.ex:5:26: Mppm.Application (module)22222223 warning: binary construction will fail because of a type mismatch2224 │2225 63 │ {:ok, _} = File.cp_r("./priv/default_tracks/", @root_path<>"/UserData/Maps/MX", fn _, _ -> false end)2226 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2227 │2228 └─ lib/mppm/application.ex:6322292230 warning: binary construction will fail because of a type mismatch2231 │2232 61 │ if {:ok, []} == File.ls(@root_path<>"/UserData/Maps/MX") do2233 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2234 │2235 └─ lib/mppm/application.ex:6122362237 warning: binary construction will fail because of a type mismatch2238 │2239 53 │ try do Port.open({:spawn_executable, @root_path<>"/TrackmaniaServer"}, [:binary, args: ["/nodaemon"]])2240 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2241 │2242 └─ lib/mppm/application.ex:5322432244 warning: an expression is always required on the right side of ->. Please provide a value after ->2245 │2246 99 │ _unhandled_message ->2247 │ ~2248 │2249 └─ lib/mppm/broker/receiver_server.ex:99:2822502251 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 operator2252 │2253 55 │ <<message::binary-size(size), next_message::binary>> = msg2254 │ ~2255 │2256 └─ lib/mppm/broker/receiver_server.ex:55:32: Mppm.Broker.ReceiverServer.parse_new_packet/222572258 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 operator2259 │2260 75 │ <<end_of_message::binary-size(missing_bytes), next_message::binary>> = binary2261 │ ~2262 │2263 └─ lib/mppm/broker/receiver_server.ex:75:39: Mppm.Broker.ReceiverServer.parse_message_next_packet/322642265 warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.22662267 This error happens when you have function calls without parentheses inside keywords. For example:22682269 function(arg, one: nested_call a, b, c)2270 function(arg, one: if expr, do: :this, else: :that)22712272 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:22732274 function(arg, one: if(expr, do: :this, else: :that))2275 function(arg, one: nested_call(a, b, c))22762277 Ambiguity found at:2278 │2279 116 │ from u in Mppm.User, where: u.uuid == ^uuid2280 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2281 │2282 └─ lib/mppm/data/user.ex:11622832284 warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.22852286 This error happens when you have function calls without parentheses inside keywords. For example:22872288 function(arg, one: nested_call a, b, c)2289 function(arg, one: if expr, do: :this, else: :that)22902291 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:22922293 function(arg, one: if(expr, do: :this, else: :that))2294 function(arg, one: nested_call(a, b, c))22952296 Ambiguity found at:2297 │2298 119 │ from u in Mppm.User, where: u.login == ^login2299 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2300 │2301 └─ lib/mppm/data/user.ex:11923022303 warning: variable "nickname" is unused (if the variable is not meant to be used, prefix it with an underscore)2304 │2305 15 │ def new_changeset(%User{} = user, %{uuid: uuid, nickname: nickname} = data)2306 │ ~~~~~~~~2307 │2308 └─ lib/mppm/data/user.ex:15:61: Mppm.User.new_changeset/223092310 warning: variable "nickname" is unused (if the variable is not meant to be used, prefix it with an underscore)2311 │2312 22 │ def new_changeset(%User{} = user, %{login: login, nickname: nickname} = data)2313 │ ~~~~~~~~2314 │2315 └─ lib/mppm/data/user.ex:22:63: Mppm.User.new_changeset/223162317 warning: using single-quoted strings to represent charlists is deprecated.2318 Use ~c"" if you indeed want a charlist or use "" instead.2319 You may run "mix format --migrate" to change all single-quoted2320 strings to use the ~c sigil and fix this warning.2321 │2322 32 │ res = :os.cmd('ss -lpn | grep "pid=#{pid}" | awk {\'print$5\'} | cut -d: -f2')2323 │ ~2324 │2325 └─ lib/mppm/game_server/server.ex:32:1923262327 warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead2328 │2329 7 │ @root_path Application.get_env(:mppm, :game_servers_root_path)2330 │ ~2331 │2332 └─ lib/mppm/game_server/server.ex:7:26: Mppm.GameServer.Server (module)23332334 warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead2335 │2336 8 │ @config Application.get_env(:mppm, Mppm.Trackmania)2337 │ ~2338 │2339 └─ lib/mppm/game_server/server.ex:8:23: Mppm.GameServer.Server (module)23402341 warning: using single-quoted strings to represent charlists is deprecated.2342 Use ~c"" if you indeed want a charlist or use "" instead.2343 You may run "mix format --migrate" to change all single-quoted2344 strings to use the ~c sigil and fix this warning.2345 │2346 31 │ @trackmania 'TrackmaniaServer'2347 │ ~2348 │2349 └─ lib/mppm/game_server/starter.ex:31:1523502351 warning: using single-quoted strings to represent charlists is deprecated.2352 Use ~c"" if you indeed want a charlist or use "" instead.2353 You may run "mix format --migrate" to change all single-quoted2354 strings to use the ~c sigil and fix this warning.2355 │2356 61 │ :os.cmd('ps -aux | grep ' ++ @trackmania)2357 │ ~2358 │2359 └─ lib/mppm/game_server/starter.ex:61:1323602361 warning: using single-quoted strings to represent charlists is deprecated.2362 Use ~c"" if you indeed want a charlist or use "" instead.2363 You may run "mix format --migrate" to change all single-quoted2364 strings to use the ~c sigil and fix this warning.2365 │2366 75 │ :os.cmd('netstat -antp | grep #{pid}/ | awk \'{print $4}\'')2367 │ ~2368 │2369 └─ lib/mppm/game_server/starter.ex:75:1523702371 warning: using single-quoted strings to represent charlists is deprecated.2372 Use ~c"" if you indeed want a charlist or use "" instead.2373 You may run "mix format --migrate" to change all single-quoted2374 strings to use the ~c sigil and fix this warning.2375 │2376 93 │ :os.cmd('ps -aux | grep '++@trackmania)2377 │ ~2378 │2379 └─ lib/mppm/game_server/starter.ex:93:1323802381 warning: variable "ss" is unused (if the variable is not meant to be used, prefix it with an underscore)2382 │2383 153 │ def handle_cast({:relink_orphan_process, {login, pid, xmlrpc_port} = ss}, state) do2384 │ ~~2385 │2386 └─ lib/mppm/game_server/server.ex:153:72: Mppm.GameServer.Server.handle_cast/223872388 warning: using single-quoted strings to represent charlists is deprecated.2389 Use ~c"" if you indeed want a charlist or use "" instead.2390 You may run "mix format --migrate" to change all single-quoted2391 strings to use the ~c sigil and fix this warning.2392 │2393 176 │ {:name, [], ['SuperAdmin']},2394 │ ~2395 │2396 └─ lib/mppm/server_config.ex:176:2223972398 warning: using single-quoted strings to represent charlists is deprecated.2399 Use ~c"" if you indeed want a charlist or use "" instead.2400 You may run "mix format --migrate" to change all single-quoted2401 strings to use the ~c sigil and fix this warning.2402 │2403 180 │ {:name, [], ['Admin']},2404 │ ~2405 │2406 └─ lib/mppm/server_config.ex:180:2224072408 warning: using single-quoted strings to represent charlists is deprecated.2409 Use ~c"" if you indeed want a charlist or use "" instead.2410 You may run "mix format --migrate" to change all single-quoted2411 strings to use the ~c sigil and fix this warning.2412 │2413 184 │ {:name, [], ['User']},2414 │ ~2415 │2416 └─ lib/mppm/server_config.ex:184:2224172418 warning: using single-quoted strings to represent charlists is deprecated.2419 Use ~c"" if you indeed want a charlist or use "" instead.2420 You may run "mix format --migrate" to change all single-quoted2421 strings to use the ~c sigil and fix this warning.2422 │2423 356 │ defp charlist(true), do: ['True']2424 │ ~2425 │2426 └─ lib/mppm/server_config.ex:356:2924272428 warning: using single-quoted strings to represent charlists is deprecated.2429 Use ~c"" if you indeed want a charlist or use "" instead.2430 You may run "mix format --migrate" to change all single-quoted2431 strings to use the ~c sigil and fix this warning.2432 │2433 357 │ defp charlist(false), do: ['False']2434 │ ~2435 │2436 └─ lib/mppm/server_config.ex:357:3024372438 warning: using single-quoted strings to represent charlists is deprecated.2439 Use ~c"" if you indeed want a charlist or use "" instead.2440 You may run "mix format --migrate" to change all single-quoted2441 strings to use the ~c sigil and fix this warning.2442 │2443 369 │ 'ls #{@root_path}UserData/Packs/'2444 │ ~2445 │2446 └─ lib/mppm/server_config.ex:369:524472448 warning: using single-quoted strings to represent charlists is deprecated.2449 Use ~c"" if you indeed want a charlist or use "" instead.2450 You may run "mix format --migrate" to change all single-quoted2451 strings to use the ~c sigil and fix this warning.2452 │2453 379 │ 'ls /opt/mppm/'2454 │ ~2455 │2456 └─ lib/mppm/server_config.ex:379:524572458 warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead2459 │2460 15 │ @root_path Application.get_env(:mppm, :game_servers_root_path)2461 │ ~2462 │2463 └─ lib/mppm/server_config.ex:15:26: Mppm.ServerConfig (module)246424652466== Compilation error in file lib/mppm/server_config.ex ==2467** (ArgumentError) lib file xmerl/include/xmerl.hrl could not be found2468 (elixir 1.20.3) lib/record/extractor.ex:45: Record.Extractor.from_lib_file/12469 (elixir 1.20.3) lib/record/extractor.ex:22: Record.Extractor.from_or_from_lib_file/12470 (elixir 1.20.3) lib/record/extractor.ex:9: Record.Extractor.extract/22471 lib/mppm/server_config.ex:10: (module)2472could 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"