Build log
nerves_system_mangopi_mq_pro
legendary_core 8.12.0 · fail · run legendary_core-8.12.0-1790974005865
1789 of 1789 lines
1Resolving Hex dependencies...2Resolution completed in 0.714s3Unchanged:4 bamboo 1.6.05 bamboo_smtp 3.0.06 castore 0.1.227 certifi 2.15.08 circular_buffer 1.1.09 cldr_utils 2.29.710 connection 1.1.011 cowboy 2.19.012 cowboy_telemetry 0.4.013 cowlib 2.20.0 VULNERABLE!14 EEF-CVE-2026-43966 (MEDIUM)15 aka: CVE-2026-43966, GHSA-w4f7-4cxr-rv3c16 HTTP Response Splitting via Non-VCHAR Bytes in cow_http_struct_hd:escape_string/217 https://osv.dev/vulnerability/EEF-CVE-2026-439661819 EEF-CVE-2026-43969 (LOW)20 aka: CVE-2026-43969, GHSA-g2wm-735q-3f5621 Cookie Request Header Injection via Unvalidated Encoder in cow_cookie:cookie/122 https://osv.dev/vulnerability/EEF-CVE-2026-4396923 db_connection 2.10.224 decimal 2.4.1 VULNERABLE!25 EEF-CVE-2026-32686 (MEDIUM)26 aka: CVE-2026-32686, GHSA-rhv4-8758-jx7v27 Unbounded exponent in decimal enables unauthenticated DoS28 https://osv.dev/vulnerability/EEF-CVE-2026-3268629 ecto 3.11.230 ecto_sql 3.11.331 elixir_make 0.10.032 ex_aws 2.4.433 ex_aws_s3 2.5.934 ex_cldr 2.33.235 ex_prompt 0.2.036 ex_url 1.4.037 expo 1.1.138 fun_with_flags 1.9.039 fun_with_flags_ui 0.8.140 gen_smtp 0.15.041 gettext 0.26.242 hackney 1.25.0 VULNERABLE!43 EEF-CVE-2026-47071 (HIGH)44 aka: CVE-2026-47071, GHSA-gp9c-pm5m-5cxr45 SOCKS5 TLS upgrade ignores caller timeout in hackney46 https://osv.dev/vulnerability/EEF-CVE-2026-470714748 EEF-CVE-2026-47076 (MEDIUM)49 aka: CVE-2026-47076, GHSA-pj7v-xfvx-wmjq50 SSRF allowlist bypass via percent-encoded host in hackney51 https://osv.dev/vulnerability/EEF-CVE-2026-470765253 EEF-CVE-2026-47069 (LOW)54 aka: CVE-2026-47069, GHSA-mp55-p8c9-rfw255 CRLF injection in cookie domain/path options in hackney56 https://osv.dev/vulnerability/EEF-CVE-2026-470695758 EEF-CVE-2026-47075 (MEDIUM)59 aka: CVE-2026-47075, GHSA-j9wq-vxxc-94wf60 CR/LF injection in query parameter in hackney61 https://osv.dev/vulnerability/EEF-CVE-2026-4707562 idna 6.1.163 interactive_cmd 0.1.464 jason 1.4.565 legendary_core 8.12.066 libcluster 3.5.067 linguist 0.3.268 metrics 1.0.169 mime 2.0.770 mimerl 1.5.071 nerves 2.0.0-pre.272 nerves_discovery 0.1.573 nerves_logging 0.2.474 nerves_runtime 0.13.1375 nerves_system_bbb 2.30.276 nerves_system_br 1.34.477 nerves_system_mangopi_mq_pro 0.17.278 nerves_system_qemu_aarch64 0.4.279 nerves_system_rpi0 2.1.280 nerves_system_rpi4 2.1.281 nerves_system_rpi5 2.1.282 nerves_system_trellis 0.5.083 nerves_system_x86_64 1.34.284 nerves_toolchain_aarch64_nerves_linux_gnu 15.3.185 nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.186 nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.187 nerves_toolchain_riscv64_nerves_linux_gnu 15.3.188 nerves_toolchain_x86_64_nerves_linux_musl 15.3.189 nerves_uevent 0.1.790 nimble_parsec 1.4.291 oban 2.19.492 parse_trans 3.4.193 phoenix 1.7.2494 phoenix_ecto 4.7.095 phoenix_html 3.3.496 phoenix_live_view 0.18.18 VULNERABLE!97 EEF-CVE-2026-64941 (LOW)98 aka: CVE-2026-64941, GHSA-36m4-rm57-3prf99 Open redirect in Phoenix.LiveView.validate_local_url!/2 via ASCII tab, LF and CR100 https://osv.dev/vulnerability/EEF-CVE-2026-64941101 phoenix_pubsub 2.3.0102 phoenix_template 1.0.4103 phoenix_view 2.0.4104 plug 1.20.3105 plug_cowboy 2.9.0106 plug_crypto 2.2.0107 postgrex 0.16.5 VULNERABLE!108 EEF-CVE-2026-32687 (HIGH)109 aka: CVE-2026-32687, GHSA-r73h-97w8-m54h110 SQL injection via channel name in Postgrex.Notifications.listen/3 and unlisten/3111 https://osv.dev/vulnerability/EEF-CVE-2026-32687112113 EEF-CVE-2026-58225 (LOW)114 aka: CVE-2026-58225, GHSA-4mw9-4qgj-m97w115 SQL injection via unescaped dollar-quote in Postgrex.Notifications reconnect replay causes notification denial of service116 https://osv.dev/vulnerability/EEF-CVE-2026-58225117 pow 1.0.39118 property_table 0.3.4119 ranch 2.3.0120 ring_logger 0.11.7121 shorter_maps 2.2.5122 ssl_verify_fun 1.1.7123 sweet_xml 0.7.5124 tablet 0.3.3125 telemetry 1.4.2126 telemetry_metrics 0.6.2127 telemetry_poller 1.3.0128 toolshed 0.5.0129 uboot_env 1.0.2130 unicode_util_compat 0.7.1131 waffle 1.1.10132 websock 0.5.3133 websock_adapter 0.5.9134 yamerl 0.10.0135 yaml_elixir 2.12.2136* Getting legendary_core (Hex package)137* Getting nerves (Hex package)138* Getting ring_logger (Hex package)139* Getting toolshed (Hex package)140* Getting nerves_runtime (Hex package)141* Getting nerves_system_bbb (Hex package)142* Getting nerves_system_mangopi_mq_pro (Hex package)143* Getting nerves_system_qemu_aarch64 (Hex package)144* Getting nerves_system_rpi0 (Hex package)145* Getting nerves_system_rpi4 (Hex package)146* Getting nerves_system_rpi5 (Hex package)147* Getting nerves_system_trellis (Hex package)148* Getting nerves_system_x86_64 (Hex package)149* Getting nerves_system_br (Hex package)150* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)151* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)152* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)153* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)154* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)155* Getting nerves_logging (Hex package)156* Getting nerves_uevent (Hex package)157* Getting uboot_env (Hex package)158* Getting elixir_make (Hex package)159* Getting property_table (Hex package)160* Getting circular_buffer (Hex package)161* Getting interactive_cmd (Hex package)162* Getting nerves_discovery (Hex package)163* Getting tablet (Hex package)164* Getting bamboo (Hex package)165* Getting bamboo_smtp (Hex package)166* Getting ecto_sql (Hex package)167* Getting ex_aws (Hex package)168* Getting ex_aws_s3 (Hex package)169* Getting ex_cldr (Hex package)170* Getting ex_prompt (Hex package)171* Getting ex_url (Hex package)172* Getting fun_with_flags (Hex package)173* Getting fun_with_flags_ui (Hex package)174* Getting gettext (Hex package)175* Getting jason (Hex package)176* Getting libcluster (Hex package)177* Getting linguist (Hex package)178* Getting mime (Hex package)179* Getting oban (Hex package)180* Getting phoenix (Hex package)181* Getting phoenix_ecto (Hex package)182* Getting phoenix_html (Hex package)183* Getting phoenix_live_view (Hex package)184* Getting phoenix_pubsub (Hex package)185* Getting phoenix_template (Hex package)186* Getting phoenix_view (Hex package)187* Getting plug_cowboy (Hex package)188* Getting postgrex (Hex package)189* Getting pow (Hex package)190* Getting shorter_maps (Hex package)191* Getting sweet_xml (Hex package)192* Getting telemetry_metrics (Hex package)193* Getting telemetry_poller (Hex package)194* Getting waffle (Hex package)195* Getting hackney (Hex package)196* Getting certifi (Hex package)197* Getting idna (Hex package)198* Getting metrics (Hex package)199* Getting mimerl (Hex package)200* Getting parse_trans (Hex package)201* Getting ssl_verify_fun (Hex package)202* Getting unicode_util_compat (Hex package)203* Getting telemetry (Hex package)204* Getting ecto (Hex package)205* Getting decimal (Hex package)206* Getting connection (Hex package)207* Getting db_connection (Hex package)208* Getting cowboy (Hex package)209* Getting cowboy_telemetry (Hex package)210* Getting plug (Hex package)211* Getting plug_crypto (Hex package)212* Getting cowlib (Hex package)213* Getting ranch (Hex package)214* Getting castore (Hex package)215* Getting websock_adapter (Hex package)216* Getting websock (Hex package)217* Getting yaml_elixir (Hex package)218* Getting yamerl (Hex package)219* Getting expo (Hex package)220* Getting nimble_parsec (Hex package)221* Getting cldr_utils (Hex package)222* Getting gen_smtp (Hex package)223Found packages with security advisories, see above for details224You have added/upgraded packages you could sponsor, run `mix hex.sponsor` to learn more225==> nerves_system_br226Generated nerves_system_br app227==> connection228Compiling 1 file (.ex)229 warning: using single-quoted strings to represent charlists is deprecated.230 Use ~c"" if you indeed want a charlist or use "" instead.231 You may run "mix format --migrate" to change all single-quoted232 strings to use the ~c sigil and fix this warning.233 │234 553 │ [{:data, [{'State', mod_state}]}]235 │ ~236 │237 └─ lib/connection.ex:553:20238239 warning: using single-quoted strings to represent charlists is deprecated.240 Use ~c"" if you indeed want a charlist or use "" instead.241 You may run "mix format --migrate" to change all single-quoted242 strings to use the ~c sigil and fix this warning.243 │244 680 │ format = '** Generic server ~p terminating \n' ++245 │ ~246 │247 └─ lib/connection.ex:680:14248249 warning: using single-quoted strings to represent charlists is deprecated.250 Use ~c"" if you indeed want a charlist or use "" instead.251 You may run "mix format --migrate" to change all single-quoted252 strings to use the ~c sigil and fix this warning.253 │254 681 │ '** Last message in was ~p~n' ++ ## No last message255 │ ~256 │257 └─ lib/connection.ex:681:7258259 warning: using single-quoted strings to represent charlists is deprecated.260 Use ~c"" if you indeed want a charlist or use "" instead.261 You may run "mix format --migrate" to change all single-quoted262 strings to use the ~c sigil and fix this warning.263 │264 682 │ '** When Server state == ~p~n' ++265 │ ~266 │267 └─ lib/connection.ex:682:7268269 warning: using single-quoted strings to represent charlists is deprecated.270 Use ~c"" if you indeed want a charlist or use "" instead.271 You may run "mix format --migrate" to change all single-quoted272 strings to use the ~c sigil and fix this warning.273 │274 683 │ '** Reason for termination == ~n** ~p~n'275 │ ~276 │277 └─ lib/connection.ex:683:7278279Generated connection app280==> mime281Compiling 1 file (.ex)282Generated mime app283==> circular_buffer284Compiling 1 file (.ex)285Generated circular_buffer app286==> nerves_compatibility_test287===> Analyzing applications...288===> Compiling gen_smtp289 ┌─ src/gen_smtp_server_session.erl:290 │291 265 │ case catch Module:code_change(OldVsn, State#state.callbackstate, Extra) of292 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.293Compile directive 'nowarn_deprecated_catch' can be used to suppress294warnings in selected modules.295296 ┌─ src/gen_smtp_server_session.erl:297 │298 389 │ crypto:start(), % ensure crypto is started, we're gonna need it299 │ ╰── Warning: crypto:start/0 is deprecated; use application:start(crypto) instead300301302 ┌─ src/smtp_util.erl:303 │304 73 │ Bin = crypto:hmac(md5, Key, Data),305 │ ╰── Warning: crypto:hmac/3 is removed; use crypto:mac/4 instead306307308 ┌─ src/gen_smtp_client.erl:309 │310 620 │ case catch smtp_socket:to_ssl_client(Socket, proplists:get_value(tls_options, Options, []), 5000) of311 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.312Compile directive 'nowarn_deprecated_catch' can be used to suppress313warnings in selected modules.314315316 ┌─ src/gen_smtp_application.erl:317 │318 12 │ start_ok(_App, {error, {already_started, _App}}) -> ok;319 │ ╰── Warning: variable '_App' is bound multiple times in this pattern.320If you mean to ignore this value, use '_' or321a different underscore-prefixed name322323 ┌─ src/gen_smtp_application.erl:324 │325 12 │ start_ok(_App, {error, {already_started, _App}}) -> ok;326 │ ╰── Warning: variable '_App' is bound multiple times in this pattern.327If you mean to ignore this value, use '_' or328a different underscore-prefixed name329330331 ┌─ src/gen_smtp_server.erl:332 │333 225 │ lists:foreach(fun(#listener{socket=S}) -> catch smtp_socket:close(S) end, State#state.listeners),334 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.335Compile directive 'nowarn_deprecated_catch' can be used to suppress336warnings in selected modules.337338339==> plug_crypto340Compiling 5 files (.ex)341Generated plug_crypto app342==> nerves_compatibility_test343===> Analyzing applications...344===> Compiling mimerl345==> ex_prompt346Compiling 1 file (.ex)347Generated ex_prompt app348==> nerves_compatibility_test349===> Analyzing applications...350===> Compiling ranch351==> ssl_verify_fun352Compiling 7 files (.erl)353Generated ssl_verify_fun app354==> tablet355Compiling 2 files (.ex)356Generated tablet app357==> elixir_make358Compiling 8 files (.ex)359Generated elixir_make app360==> nerves_logging361 CC kmsg_tailer.o362 LD kmsg_tailer363Compiling 5 files (.ex)364Generated nerves_logging app365warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"366 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2367 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1368 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5369 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2370 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4371 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2372373==> castore374Compiling 1 file (.ex)375Generated castore app376==> nerves_compatibility_test377===> Analyzing applications...378===> Compiling cowlib379==> nerves_discovery380Compiling 5 files (.ex)381Generated nerves_discovery app382==> ring_logger383Compiling 7 files (.ex)384Generated ring_logger app385==> decimal386Compiling 4 files (.ex)387 warning: this clause of defp check_dbl_min_max/1 is never used (or it will always fail/warn when invoked)388 │389 2842 │ defp check_dbl_min_max(%Decimal{coef: :inf} = infinity), do: infinity390 │ ~391 │392 └─ lib/decimal.ex:2842:8: Decimal.check_dbl_min_max/1393394Generated decimal app395==> jason396Compiling 10 files (.ex)397Generated jason app398==> interactive_cmd399Compiling 1 file (.ex)400Generated interactive_cmd app401==> nerves402Compiling 65 files (.ex)403 warning: redefining module Mix.Tasks.Nerves.Init (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Mix.Tasks.Nerves.Init.beam)404 │405 6 │ defmodule Mix.Tasks.Nerves.Init do406 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~407 │408 └─ lib/mix/tasks/nerves.init.ex:6: Mix.Tasks.Nerves.Init (module)409410 warning: redefining module Nerves (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.beam)411 │412 6 │ defmodule Nerves do413 │ ~~~~~~~~~~~~~~~~~~~414 │415 └─ lib/nerves.ex:6: Nerves (module)416417 warning: redefining module Nerves.ArtifactResolver (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.ArtifactResolver.beam)418 │419 5 │ defmodule Nerves.ArtifactResolver do420 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~421 │422 └─ lib/nerves/artifact_resolver.ex:5: Nerves.ArtifactResolver (module)423424 warning: redefining module Nerves.BuildAction.AppModes (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.AppModes.beam)425 │426 6 │ defmodule Nerves.BuildAction.AppModes do427 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~428 │429 └─ lib/nerves/build_action/app_modes.ex:6: Nerves.BuildAction.AppModes (module)430431 warning: redefining module Nerves.BuildAction.CheckExecutables (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.CheckExecutables.beam)432 │433 5 │ defmodule Nerves.BuildAction.CheckExecutables do434 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~435 │436 └─ lib/nerves/build_action/check_executables.ex:5: Nerves.BuildAction.CheckExecutables (module)437438 warning: redefining module Nerves.BuildAction.Erlinit (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.Erlinit.beam)439 │440 8 │ defmodule Nerves.BuildAction.Erlinit do441 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~442 │443 └─ lib/nerves/build_action/erlinit.ex:8: Nerves.BuildAction.Erlinit (module)444445 warning: redefining module Nerves.BuildAction.Firmware (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.Firmware.beam)446 │447 5 │ defmodule Nerves.BuildAction.Firmware do448 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~449 │450 └─ lib/nerves/build_action/firmware.ex:5: Nerves.BuildAction.Firmware (module)451452 warning: redefining module Nerves.BuildAction.IExStartupCheck (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.IExStartupCheck.beam)453 │454 7 │ defmodule Nerves.BuildAction.IExStartupCheck do455 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~456 │457 └─ lib/nerves/build_action/iex_startup_check.ex:7: Nerves.BuildAction.IExStartupCheck (module)458459 warning: redefining module Nerves.BuildAction.NervesV1System (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1System.beam)460 │461 5 │ defmodule Nerves.BuildAction.NervesV1System do462 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~463 │464 └─ lib/nerves/build_action/nerves_v1_system.ex:5: Nerves.BuildAction.NervesV1System (module)465466 warning: redefining module Nerves.BuildAction.NervesV1Toolchain (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1Toolchain.beam)467 │468 5 │ defmodule Nerves.BuildAction.NervesV1Toolchain do469 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~470 │471 └─ lib/nerves/build_action/nerves_v1_toolchain.ex:5: Nerves.BuildAction.NervesV1Toolchain (module)472473 warning: redefining module Nerves.BuildAction.Rootfs (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.Rootfs.beam)474 │475 5 │ defmodule Nerves.BuildAction.Rootfs do476 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~477 │478 └─ lib/nerves/build_action/rootfs.ex:5: Nerves.BuildAction.Rootfs (module)479480 warning: redefining module Nerves.BuildAction.SortApps (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.SortApps.beam)481 │482 6 │ defmodule Nerves.BuildAction.SortApps do483 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~484 │485 └─ lib/nerves/build_action/sort_apps.ex:6: Nerves.BuildAction.SortApps (module)486487 warning: redefining module Nerves.BuildAction.StripAll (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.StripAll.beam)488 │489 5 │ defmodule Nerves.BuildAction.StripAll do490 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~491 │492 └─ lib/nerves/build_action/strip_all.ex:5: Nerves.BuildAction.StripAll (module)493494 warning: redefining module Nerves.BuildAction.Trimmer (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.Trimmer.beam)495 │496 5 │ defmodule Nerves.BuildAction.Trimmer do497 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~498 │499 └─ lib/nerves/build_action/trimmer.ex:5: Nerves.BuildAction.Trimmer (module)500501 warning: redefining module Nerves.BuildPlan (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildPlan.beam)502 │503 5 │ defmodule Nerves.BuildPlan do504 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~505 │506 └─ lib/nerves/build_plan.ex:5: Nerves.BuildPlan (module)507508 warning: redefining module Nerves.BuildPlan.Checks (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildPlan.Checks.beam)509 │510 5 │ defmodule Nerves.BuildPlan.Checks do511 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~512 │513 └─ lib/nerves/build_plan/checks.ex:5: Nerves.BuildPlan.Checks (module)514515 warning: redefining module Nerves.Container (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.Container.beam)516 │517 6 │ defmodule Nerves.Container do518 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~519 │520 └─ lib/nerves/container.ex:6: Nerves.Container (module)521522 warning: redefining module Nerves.Fingerprint (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.Fingerprint.beam)523 │524 5 │ defmodule Nerves.Fingerprint do525 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~526 │527 └─ lib/nerves/fingerprint.ex:5: Nerves.Fingerprint (module)528529 warning: redefining module Nerves.MixPackage (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.MixPackage.beam)530 │531 5 │ defmodule Nerves.MixPackage do532 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~533 │534 └─ lib/nerves/mix_package.ex:5: Nerves.MixPackage (module)535536 warning: redefining module Nerves.Paths (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.Paths.beam)537 │538 5 │ defmodule Nerves.Paths do539 │ ~~~~~~~~~~~~~~~~~~~~~~~~~540 │541 └─ lib/nerves/paths.ex:5: Nerves.Paths (module)542543 warning: redefining module Nerves.TargetTuple (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.TargetTuple.beam)544 │545 5 │ defmodule Nerves.TargetTuple do546 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~547 │548 └─ lib/nerves/target_tuple.ex:5: Nerves.TargetTuple (module)549550Generated nerves app551==> nerves_toolchain_riscv64_nerves_linux_gnu552Compiling 1 file (.ex)553Generated nerves_toolchain_riscv64_nerves_linux_gnu app554==> nerves_system_mangopi_mq_pro555Generated nerves_system_mangopi_mq_pro app556==> nimble_parsec557Compiling 4 files (.ex)558Generated nimble_parsec app559==> nerves_compatibility_test560===> Analyzing applications...561===> Compiling unicode_util_compat562===> Analyzing applications...563===> Compiling idna564===> Analyzing applications...565===> Compiling telemetry566==> libcluster567Compiling 13 files (.ex)568Generated libcluster app569==> telemetry_metrics570Compiling 7 files (.ex)571 warning: unused require Logger572 │573 391 │ require Logger574 │ ~575 │576 └─ lib/telemetry_metrics.ex:391:3577578Generated telemetry_metrics app579==> nerves_compatibility_test580===> Analyzing applications...581===> Compiling telemetry_poller582==> ecto583Compiling 56 files (.ex)584 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead585 │586 297 │ @spec insert(587 │ ~~~~~~~~~~~~~588 │589 └─ lib/ecto/multi.ex:297: Ecto.Multi (module)590591 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead592 │593 338 │ @spec update(t, name, Changeset.t() | fun(Changeset.t()), Keyword.t()) :: t594 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~595 │596 └─ lib/ecto/multi.ex:338: Ecto.Multi (module)597598 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead599 │600 371 │ @spec insert_or_update(t, name, Changeset.t() | fun(Changeset.t()), Keyword.t()) :: t601 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~602 │603 └─ lib/ecto/multi.ex:371: Ecto.Multi (module)604605 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead606 │607 417 │ @spec delete(608 │ ~~~~~~~~~~~~~609 │610 └─ lib/ecto/multi.ex:417: Ecto.Multi (module)611612 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead613 │614 451 │ @spec one(615 │ ~~~~~~~~~~616 │617 └─ lib/ecto/multi.ex:451: Ecto.Multi (module)618619 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead620 │621 482 │ @spec all(622 │ ~~~~~~~~~~623 │624 └─ lib/ecto/multi.ex:482: Ecto.Multi (module)625626 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead627 │628 513 │ @spec exists?(629 │ ~~~~~~~~~~~~~~630 │631 └─ lib/ecto/multi.ex:513: Ecto.Multi (module)632633 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead634 │635 623 │ @spec insert_all(636 │ ~~~~~~~~~~~~~~~~~637 │638 └─ lib/ecto/multi.ex:623: Ecto.Multi (module)639640 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead641 │642 667 │ @spec update_all(643 │ ~~~~~~~~~~~~~~~~~644 │645 └─ lib/ecto/multi.ex:667: Ecto.Multi (module)646647 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead648 │649 712 │ @spec delete_all(t, name, Ecto.Queryable.t() | fun(Ecto.Queryable.t()), Keyword.t()) :: t650 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~651 │652 └─ lib/ecto/multi.ex:712: Ecto.Multi (module)653654 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)655 │656 347 │ raise BadStructError, struct: struct, term: data657 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~658 │659 └─ lib/ecto/repo/queryable.ex:347: Ecto.Repo.Queryable.process/4660661Generated ecto app662==> db_connection663Compiling 18 files (.ex)664Generated db_connection app665==> nerves_compatibility_test666===> Analyzing applications...667===> Compiling cowboy668==> expo669Compiling 2 files (.erl)670Compiling 22 files (.ex)671Generated expo app672==> gettext673Compiling 18 files (.ex)674 warning: unused require Gettext.Macros675 │676 594 │ require Gettext.Macros677 │ ~678 │679 └─ lib/gettext.ex:594:3680681 warning: Kernel.ParallelCompiler.async/1 is deprecated. Use `pmap/2` instead682 │683 426 │ Kernel.ParallelCompiler.async(fn ->684 │ ~685 │686 └─ lib/gettext/compiler.ex:426:39: Gettext.Compiler.compile_po_files/3687688 warning: the following clause is redundant:689690 defp ensure_empty_msgstr!(%Expo.Message.Plural{} = message)691692 it has type:693694 dynamic(%Expo.Message.Plural{})695696 previous clauses have already matched on the following types:697698 %Expo.Message.Singular{}699 %Expo.Message.Plural{}700701 │702 391 │ defp ensure_empty_msgstr!(%Message.Plural{} = message) do703 │ ~704 │705 └─ lib/gettext/extractor.ex:391:8: Gettext.Extractor.ensure_empty_msgstr!/1706707Generated gettext app708==> phoenix_pubsub709Compiling 12 files (.ex)710Generated phoenix_pubsub app711==> nerves_compatibility_test712===> Analyzing applications...713===> Compiling certifi714==> cldr_utils715Compiling 12 files (.ex)716Generated cldr_utils app717==> ex_cldr718warning: in order to compile .yrl files, you must add "compilers: [:yecc] ++ Mix.compilers()" to the "def project" section of ex_cldr's mix.exs719Compiling 1 file (.yrl)720warning: in order to compile .xrl files, you must add "compilers: [:leex] ++ Mix.compilers()" to the "def project" section of ex_cldr's mix.exs721Compiling 1 file (.xrl)722Compiling 2 files (.erl)723Compiling 41 files (.ex)724 warning: unused require Logger725 │726 89 │ require Logger727 │ ~728 │729 └─ lib/cldr/install.ex:89:5730731 warning: using single-quoted strings to represent charlists is deprecated.732 Use ~c"" if you indeed want a charlist or use "" instead.733 You may run "mix format --migrate" to change all single-quoted734 strings to use the ~c sigil and fix this warning.735 │736 41 │ defmacro sigil_l(locale_name, 'u') do737 │ ~738 │739 └─ lib/cldr/language_tag/sigil.ex:41:33740741 warning: unused require Logger742 │743 8 │ require Logger744 │ ~745 │746 └─ lib/cldr/locale/cache.ex:8:3747748 warning: unused require Cldr.Backend.Compiler749 │750 47 │ require Cldr.Backend.Compiler751 │ ~752 │753 └─ lib/cldr.ex:47:3754755Compiling lib/cldr/validity/subdivision.ex (it's taking more than 10s)756Compiling lib/cldr/validity/language.ex (it's taking more than 10s)757 warning: the following clause is redundant:758759 defp encode_key("x0", private_use) when is_list(private_use)760761 it has type:762763 binary(), dynamic(empty_list() or non_empty_list(term(), term()))764765 previous clauses have already matched on the following types:766767 term(), empty_list() or non_empty_list(term(), term())768 term(), {term()}769 term(), {term(), term()}770 term(), {term(), term(), term()}771772 │773 113 │ defp encode_key("x0", private_use) when is_list(private_use) do774 │ ~775 │776 └─ lib/cldr/validity/t.ex:113:8: Cldr.Validity.T.encode_key/2777778 warning: the following clause will never match:779780 {:error, {exception, reason}} ->781782 it is expected to match on type:783784 dynamic(false)785786 type warning found at:787 │788 137 │ {:error, {exception, reason}} ->789 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~790 │791 └─ lib/cldr/config/rbnf_config.ex:137: Cldr.Rbnf.Config.for_locale/1792793 warning: the following clause is redundant:794795 def normalize(nil)796797 it has type:798799 nil800801 previous clauses have already matched on the following types:802803 binary()804 atom()805806 │807 36 │ def normalize(nil) do808 │ ~809 │810 └─ lib/cldr/validity/script.ex:36:7: Cldr.Validity.Script.normalize/1811812 warning: the 1st pattern in clause will never match:813814 nil815816 because it is expected to receive type:817818 dynamic(bitstring())819820 hint: defimpl for BitString requires its callbacks to match exclusively on bitstring()821822 type warning found at:823 │824 335 │ def to_string(nil) do825 │ ~~~~~~~~~~~~~~~~~~~~~826 │827 └─ lib/cldr/language_tag.ex:335: Cldr.LanguageTag.Chars.BitString.to_string/1828829Generated ex_cldr app830==> ex_url831Compiling 12 files (.ex)832 warning: variable "territory" is unused (if the variable is not meant to be used, prefix it with an underscore)833 │834 70 │ defp parse_phone_number(number, territory \\ nil) do835 │ ~~~~~~~~~836 │837 └─ lib/url/tel.ex:70:37: URL.Tel.parse_phone_number/2838839 warning: variable "format" is unused (if the variable is not meant to be used, prefix it with an underscore)840 │841 74 │ defp format(%__MODULE__{tel: tel}, format \\ :international) do842 │ ~~~~~~843 │844 └─ lib/url/tel.ex:74:40: URL.Tel.format/2845846 warning: function phone_context/1 is unused847 │848 78 │ defp phone_context(_) do849 │ ~850 │851 └─ lib/url/tel.ex:78:10: URL.Tel (module)852853 warning: function parse_phone_number/2 is unused854 │855 70 │ defp parse_phone_number(number, territory \\ nil) do856 │ ~857 │858 └─ lib/url/tel.ex:70:10: URL.Tel (module)859860 warning: function gettext_territory/0 is unused861 │862 98 │ defp gettext_territory do863 │ ~864 │865 └─ lib/url/tel.ex:98:10: URL.Tel (module)866867 warning: function get_territory/0 is unused868 │869 83 │ defp get_territory do870 │ ~871 │872 └─ lib/url/tel.ex:83:8: URL.Tel (module)873874 warning: function cldr_territory/0 is unused875 │876 88 │ defp cldr_territory do877 │ ~878 │879 └─ lib/url/tel.ex:88:10: URL.Tel (module)880881Generated ex_url app882==> linguist883Compiling 5 files (.ex)884Generating Linguist.Cldr for 2 locales named [:en, :und] with a default locale named :en885Generated linguist app886==> plug887Compiling 1 file (.erl)888Compiling 42 files (.ex)889Generated plug app890==> phoenix_html891Compiling 9 files (.ex)892 warning: the 1st pattern in clause will never match:893894 60895896 because it is expected to receive type:897898 dynamic(empty_list() or non_empty_list(term(), term()))899900 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())901902 type warning found at:903 │904 56 │ def to_iodata(?<), do: "<"905 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~906 │907 └─ lib/phoenix_html/safe.ex:56: Phoenix.HTML.Safe.List.to_iodata/1908909 warning: the 1st pattern in clause will never match:910911 62912913 because it is expected to receive type:914915 dynamic(empty_list() or non_empty_list(term(), term()))916917 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())918919 type warning found at:920 │921 57 │ def to_iodata(?>), do: ">"922 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~923 │924 └─ lib/phoenix_html/safe.ex:57: Phoenix.HTML.Safe.List.to_iodata/1925926 warning: comparison between distinct types found:927928 id == nil929930 given types:931932 dynamic(not false and not nil and not binary()) == nil933934 where "id" was given the types:935936 # type: dynamic(not false and not nil)937 # from: lib/phoenix_html/form_data.ex:92:8938 id = Keyword.get(opts, :id) || name939940 # type: dynamic(not false and not nil and not binary())941 # from: lib/phoenix_html/form_data.ex:94:12942 is_binary(id)943944 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 false945946 type warning found at:947 │948 94 │ unless is_binary(id) or is_nil(id) do949 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~950 │951 └─ lib/phoenix_html/form_data.ex:94: Phoenix.HTML.FormData.Atom.to_form/2952953 warning: the 1st pattern in clause will never match:954955 38956957 because it is expected to receive type:958959 dynamic(empty_list() or non_empty_list(term(), term()))960961 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())962963 type warning found at:964 │965 58 │ def to_iodata(?&), do: "&"966 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~967 │968 └─ lib/phoenix_html/safe.ex:58: Phoenix.HTML.Safe.List.to_iodata/1969970 warning: the 1st pattern in clause will never match:971972 34973974 because it is expected to receive type:975976 dynamic(empty_list() or non_empty_list(term(), term()))977978 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())979980 type warning found at:981 │982 59 │ def to_iodata(?"), do: """983 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~984 │985 └─ lib/phoenix_html/safe.ex:59: Phoenix.HTML.Safe.List.to_iodata/1986987 warning: the 1st pattern in clause will never match:988989 39990991 because it is expected to receive type:992993 dynamic(empty_list() or non_empty_list(term(), term()))994995 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())996997 type warning found at:998 │999 60 │ def to_iodata(?'), do: "'"1000 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1001 │1002 └─ lib/phoenix_html/safe.ex:60: Phoenix.HTML.Safe.List.to_iodata/110031004 warning: the 1st pattern in clause will never match:10051006 {:safe, data}10071008 because it is expected to receive type:10091010 dynamic(empty_list() or non_empty_list(term(), term()))10111012 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())10131014 type warning found at:1015 │1016 76 │ def to_iodata({:safe, data}) do1017 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1018 │1019 └─ lib/phoenix_html/safe.ex:76: Phoenix.HTML.Safe.List.to_iodata/110201021 warning: the following clause is redundant:10221023 def to_iodata(other)10241025 it has type:10261027 dynamic(empty_list() or non_empty_list(term(), term()))10281029 previous clauses have already matched on the following types:10301031 non_empty_list(term(), term())1032 empty_list()10331034 │1035 80 │ def to_iodata(other) do1036 │ ~1037 │1038 └─ lib/phoenix_html/safe.ex:80:7: Phoenix.HTML.Safe.List.to_iodata/110391040 warning: the 1st pattern in clause will never match:10411042 h10431044 because it is expected to receive type:10451046 dynamic(empty_list() or non_empty_list(term(), term()))10471048 where "h" was given the type:10491050 # type: integer()1051 # from: lib/phoenix_html/safe.ex:62:251052 is_integer(h)10531054 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())10551056 type warning found at:1057 │1058 62 │ def to_iodata(h) when is_integer(h) and h <= 255 do1059 │ ~1060 │1061 └─ lib/phoenix_html/safe.ex:62:17: Phoenix.HTML.Safe.List.to_iodata/110621063 warning: the 1st pattern in clause will never match:10641065 h10661067 because it is expected to receive type:10681069 dynamic(empty_list() or non_empty_list(term(), term()))10701071 where "h" was given the type:10721073 # type: integer()1074 # from: lib/phoenix_html/safe.ex:66:251075 is_integer(h)10761077 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())10781079 type warning found at:1080 │1081 66 │ def to_iodata(h) when is_integer(h) do1082 │ ~1083 │1084 └─ lib/phoenix_html/safe.ex:66:17: Phoenix.HTML.Safe.List.to_iodata/110851086 warning: the 1st pattern in clause will never match:10871088 h10891090 because it is expected to receive type:10911092 dynamic(empty_list() or non_empty_list(term(), term()))10931094 where "h" was given the type:10951096 # type: binary()1097 # from: lib/phoenix_html/safe.ex:72:251098 is_binary(h)10991100 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())11011102 type warning found at:1103 │1104 72 │ def to_iodata(h) when is_binary(h) do1105 │ ~1106 │1107 └─ lib/phoenix_html/safe.ex:72:17: Phoenix.HTML.Safe.List.to_iodata/111081109Generated phoenix_html app1110==> phoenix_template1111Compiling 4 files (.ex)1112 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 operator1113 │1114 505 │ <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix1115 │ ~1116 │1117 └─ lib/phoenix/template.ex:505:29: Phoenix.Template.unsuffix/211181119Generated phoenix_template app1120==> phoenix_view1121Compiling 1 file (.ex)1122 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 operator1123 │1124 655 │ <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix1125 │ ~1126 │1127 └─ lib/phoenix_view.ex:655:29: Phoenix.View.unsuffix/211281129Generated phoenix_view app1130warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1131 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21132 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11133 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51134 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21135 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41136 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/211371138==> postgrex1139Compiling 64 files (.ex)1140 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 operator1141 │1142 52 │ <<positions::binary-size(positions_bytes), remaining_data::binary>> = rest1143 │ ~1144 │1145 └─ lib/postgrex/extensions/tsvector.ex:52:30: Postgrex.Extensions.TSVector.decode_tsvector_values/111461147 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 operator1148 │1149 98 │ <<data::size(rest_size)>> = rest1150 │ ~1151 │1152 └─ lib/postgrex/messages.ex:98:24: Postgrex.Messages.parse/311531154 warning: unused require Postgrex.Messages1155 │1156 55 │ require Postgrex.Messages1157 │ ~1158 │1159 └─ lib/postgrex/query.ex:55:311601161 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 operator1162 │1163 3201 │ <<body::binary(size), rest::binary>> ->1164 │ ~1165 │1166 └─ lib/postgrex/protocol.ex:3201:22: Postgrex.Protocol.msg_decode/111671168 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 operator1169 │1170 16 │ <<binary::binary-size(last_pos), last::bits>> = val1171 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1172 │1173 └─ lib/postgrex/extensions/bit_string.ex:16: Postgrex.DefaultTypes."Elixir.Postgrex.Extensions.BitString"/111741175 warning: the following clause will never match:11761177 {:error, %Postgrex.Error{} = err, s, buffer} ->11781179 because it attempts to match on the result of:11801181 msg_send(%{s | buffer: nil}, msgs, buffer)11821183 which has type:11841185 dynamic(:ok or {:disconnect, term(), term()})11861187 type warning found at:1188 │1189 1128 │ {:error, %Postgrex.Error{} = err, s, buffer} ->1190 │ ~1191 │1192 └─ lib/postgrex/protocol.ex:1128:7: Postgrex.Protocol.handle_simple/311931194 warning: the following clause will never match:11951196 {:error, %Postgrex.Error{} = err, s, buffer} ->11971198 because it attempts to match on the result of:11991200 msg_send(%{s | buffer: nil}, msgs, buffer)12011202 which has type:12031204 dynamic(:ok or {:disconnect, term(), term()})12051206 type warning found at:1207 │1208 1238 │ {:error, %Postgrex.Error{} = err, s, buffer} ->1209 │ ~1210 │1211 └─ lib/postgrex/protocol.ex:1238:7: Postgrex.Protocol.handle_streaming/212121213 warning: a struct for Postgrex.Query is expected on struct update:12141215 %Postgrex.Query{1216 query1217 | param_oids: param_oids,1218 param_formats: param_formats,1219 param_types: param_types1220 }12211222 but got type:12231224 dynamic()12251226 where "query" was given the type:12271228 # type: dynamic()1229 # from: lib/postgrex/protocol.ex:1637:411230 query12311232 when defining the variable "query", you must also pattern match on "%Postgrex.Query{}"12331234 type warning found at:1235 │1236 1640 │ query = %Query{1237 │ ~1238 │1239 └─ lib/postgrex/protocol.ex:1640:15: Postgrex.Protocol.describe_params/312401241 warning: a struct for Postgrex.Query is expected on struct update:12421243 %Postgrex.Query{1244 query1245 | ref: make_ref(),1246 types: types,1247 columns: nil,1248 result_oids: nil,1249 result_formats: [],1250 result_types: nil1251 }12521253 but got type:12541255 dynamic()12561257 where "query" was given the type:12581259 # type: dynamic()1260 # from: lib/postgrex/protocol.ex:1668:411261 query12621263 when defining the variable "query", you must also pattern match on "%Postgrex.Query{}"12641265 type warning found at:1266 │1267 1669 │ query = %Query{1268 │ ~1269 │1270 └─ lib/postgrex/protocol.ex:1669:13: Postgrex.Protocol.describe_result/412711272 warning: a struct for Postgrex.Query is expected on struct update:12731274 %Postgrex.Query{1275 query1276 | ref: make_ref(),1277 types: types,1278 columns: columns,1279 result_oids: result_oids,1280 result_formats: result_formats,1281 result_types: result_types1282 }12831284 but got type:12851286 dynamic()12871288 where "query" was given the type:12891290 # type: dynamic()1291 # from: lib/postgrex/protocol.ex:1682:411292 query12931294 when defining the variable "query", you must also pattern match on "%Postgrex.Query{}"12951296 type warning found at:1297 │1298 1685 │ query = %Query{1299 │ ~1300 │1301 └─ lib/postgrex/protocol.ex:1685:15: Postgrex.Protocol.describe_result/413021303 warning: the following clause will never match:13041305 {:error, %Postgrex.Error{} = err, s, buffer} ->13061307 because it attempts to match on the result of:13081309 msg_send(%{s | buffer: nil}, msgs, buffer)13101311 which has type:13121313 dynamic(:ok or {:disconnect, term(), term()})13141315 type warning found at:1316 │1317 2865 │ {:error, %Postgrex.Error{} = err, s, buffer} ->1318 │ ~1319 │1320 └─ lib/postgrex/protocol.ex:2865:7: Postgrex.Protocol.handle_transaction/313211322Generated postgrex app1323warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1324 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21325 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11326 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51327 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21328 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41329 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/213301331==> ecto_sql1332Compiling 25 files (.ex)1333 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 operator1334 │1335 93 │ <<_, unquoted::binary-size(size), _>> = quoted1336 │ ~1337 │1338 └─ lib/ecto/adapters/postgres/connection.ex:93:34: Ecto.Adapters.Postgres.Connection.strip_quotes/113391340 warning: unused require Ecto.Query1341 │1342 140 │ require Ecto.Query1343 │ ~1344 │1345 └─ lib/ecto/adapters/tds.ex:140:313461347 warning: unused require Logger1348 │1349 139 │ require Logger1350 │ ~1351 │1352 └─ lib/ecto/adapters/tds.ex:139:313531354 warning: unused require Ecto.Query1355 │1356 107 │ require Ecto.Query1357 │ ~1358 │1359 └─ lib/ecto/migrator.ex:107:313601361 warning: this clause of defp validate_index_opts!/1 is never used (or it will always fail/warn when invoked)1362 │1363 1558 │ defp validate_index_opts!(opts), do: opts1364 │ ~1365 │1366 └─ lib/ecto/migration.ex:1558:8: Ecto.Migration.validate_index_opts!/113671368 warning: this clause of defp drop_reference_if_exists_expr/3 is never used (or it will always fail/warn when invoked)1369 │1370 1732 │ defp drop_reference_if_exists_expr(_, _, _),1371 │ ~1372 │1373 └─ lib/ecto/adapters/postgres/connection.ex:1732:10: Ecto.Adapters.Postgres.Connection.drop_reference_if_exists_expr/313741375 warning: List.zip/1 is deprecated. Use Enum.zip/1 instead1376 │1377 681 │ |> List.zip()1378 │ ~1379 │1380 └─ lib/ecto/adapters/sql.ex:681:15: Ecto.Adapters.SQL.format_table/11381 └─ lib/ecto/adapters/sql.ex:712:15: Ecto.Adapters.SQL.cells/213821383Generated ecto_sql app1384==> fun_with_flags1385Compiling 21 files (.ex)1386 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1387 │1388 28 │ Logger.warn "FunWithFlags: couldn't load flag '#{flag_name}' from storage, falling back to stale cached value from ETS"1389 │ ~1390 │1391 └─ lib/fun_with_flags/store.ex:28:12: FunWithFlags.Store.try_to_use_the_cached_value/313921393Generated fun_with_flags app1394warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1395 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21396 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11397 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51398 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21399 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41400 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/214011402==> oban1403Compiling 61 files (.ex)1404 warning: struct MyXQL.Error is undefined (module MyXQL.Error is not available or is yet to be defined)1405 │1406 158 │ error in [DBConnection.ConnectionError, Postgrex.Error, MyXQL.Error] ->1407 │ ~1408 │1409 └─ lib/oban/repo.ex:158:11: Oban.Repo.transaction/414101411 warning: struct MyXQL.Error is undefined (module MyXQL.Error is not available or is yet to be defined)1412 │1413 123 │ error in [DBConnection.ConnectionError, Postgrex.Error, MyXQL.Error] ->1414 │ ~1415 │1416 └─ lib/oban/peers/database.ex:123:11: Oban.Peers.Database.handle_info/214171418Generated oban app1419warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1420 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21421 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11422 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51423 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21424 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41425 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/214261427==> phoenix_ecto1428Compiling 7 files (.ex)1429Generated phoenix_ecto app1430==> nerves_compatibility_test1431===> Analyzing applications...1432===> Compiling parse_trans1433==> uboot_env1434Compiling 5 files (.ex)1435Generated uboot_env app1436==> shorter_maps1437Compiling 1 file (.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 192 │ defp modifier([mod], _default) when mod in 'as', do: mod1444 │ ~1445 │1446 └─ lib/shorter_maps.ex:192:4614471448 warning: the following clause will never match:14491450 {:error, step, reason} ->14511452 it is expected to match on type:14531454 none()14551456 type warning found at:1457 │1458 84 │ {:error, step, reason} ->1459 │ ~1460 │1461 └─ lib/shorter_maps.ex:84:7: ShorterMaps.do_sigil_m/314621463Generated shorter_maps app1464==> nerves_compatibility_test1465===> Analyzing applications...1466===> Compiling metrics1467===> Analyzing applications...1468===> Compiling hackney1469 ┌─ src/hackney_manager.erl:1470 │1471 114 │ catch ets:delete(?MODULE, Ref),1472 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1473Compile directive 'nowarn_deprecated_catch' can be used to suppress1474warnings in selected modules.14751476 ┌─ src/hackney_manager.erl:1477 │1478 125 │ catch Transport:close(Socket);1479 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1480Compile directive 'nowarn_deprecated_catch' can be used to suppress1481warnings in selected modules.14821483 ┌─ src/hackney_manager.erl:1484 │1485 129 │ catch Handler:checkin(SocketRef, Socket)1486 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1487Compile directive 'nowarn_deprecated_catch' can be used to suppress1488warnings in selected modules.14891490 ┌─ src/hackney_manager.erl:1491 │1492 133 │ catch Transport:controlling_process(Socket, self()),1493 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1494Compile directive 'nowarn_deprecated_catch' can be used to suppress1495warnings in selected modules.14961497 ┌─ src/hackney_manager.erl:1498 │1499 134 │ catch Transport:close(Socket),1500 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1501Compile directive 'nowarn_deprecated_catch' can be used to suppress1502warnings in selected modules.15031504 ┌─ src/hackney_manager.erl:1505 │1506 227 │ catch ets:delete(?MODULE, Ref),1507 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1508Compile directive 'nowarn_deprecated_catch' can be used to suppress1509warnings in selected modules.15101511 ┌─ src/hackney_manager.erl:1512 │1513 255 │ catch ets:delete(?MODULE, Ref),1514 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1515Compile directive 'nowarn_deprecated_catch' can be used to suppress1516warnings in selected modules.15171518 ┌─ src/hackney_manager.erl:1519 │1520 269 │ catch Transport:controlling_process(Socket, self()),1521 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1522Compile directive 'nowarn_deprecated_catch' can be used to suppress1523warnings in selected modules.15241525 ┌─ src/hackney_manager.erl:1526 │1527 270 │ catch Transport:close(Socket),1528 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1529Compile directive 'nowarn_deprecated_catch' can be used to suppress1530warnings in selected modules.15311532 ┌─ src/hackney_manager.erl:1533 │1534 383 │ catch unlink(Stream),1535 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1536Compile directive 'nowarn_deprecated_catch' can be used to suppress1537warnings in selected modules.15381539 ┌─ src/hackney_manager.erl:1540 │1541 416 │ catch ets:delete(?REFS, Ref),1542 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1543Compile directive 'nowarn_deprecated_catch' can be used to suppress1544warnings in selected modules.15451546 ┌─ src/hackney_manager.erl:1547 │1548 426 │ catch ets:delete(?REFS, Ref),1549 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1550Compile directive 'nowarn_deprecated_catch' can be used to suppress1551warnings in selected modules.15521553 ┌─ src/hackney_manager.erl:1554 │1555 470 │ case catch hackney_stream:start_link(StreamTo2, Ref, Client) of1556 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1557Compile directive 'nowarn_deprecated_catch' can be used to suppress1558warnings in selected modules.15591560 ┌─ src/hackney_manager.erl:1561 │1562 487 │ catch Transport:close(Socket),1563 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1564Compile directive 'nowarn_deprecated_catch' can be used to suppress1565warnings in selected modules.15661567 ┌─ src/hackney_manager.erl:1568 │1569 543 │ catch ets:delete(?REFS, Ref),1570 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1571Compile directive 'nowarn_deprecated_catch' can be used to suppress1572warnings in selected modules.15731574 ┌─ src/hackney_manager.erl:1575 │1576 544 │ catch ets:delete(?MODULE, Ref),1577 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1578Compile directive 'nowarn_deprecated_catch' can be used to suppress1579warnings in selected modules.15801581 ┌─ src/hackney_manager.erl:1582 │1583 559 │ catch ets:delete(?REFS, Ref),1584 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1585Compile directive 'nowarn_deprecated_catch' can be used to suppress1586warnings in selected modules.15871588 ┌─ src/hackney_manager.erl:1589 │1590 560 │ catch ets:delete(?MODULE, Ref),1591 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1592Compile directive 'nowarn_deprecated_catch' can be used to suppress1593warnings in selected modules.15941595 ┌─ src/hackney_manager.erl:1596 │1597 618 │ catch unlink(Pid),1598 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1599Compile directive 'nowarn_deprecated_catch' can be used to suppress1600warnings in selected modules.160116021603 ┌─ src/hackney_happy.erl:1604 │1605 101 │ catch exit(Pid, normal),1606 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1607Compile directive 'nowarn_deprecated_catch' can be used to suppress1608warnings in selected modules.16091610 ┌─ src/hackney_happy.erl:1611 │1612 128 │ case (catch inet_res:getbyname(Hostname, Type)) of1613 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1614Compile directive 'nowarn_deprecated_catch' can be used to suppress1615warnings in selected modules.16161617 ┌─ src/hackney_happy.erl:1618 │1619 151 │ case (catch inet:gethostbyname(Hostname, InetType)) of1620 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1621Compile directive 'nowarn_deprecated_catch' can be used to suppress1622warnings in selected modules.162316241625 ┌─ src/hackney_trace.erl:1626 │1627 132 │ (catch io:format(standard_io, "stop trace at ~s~n", [format_timestamp(Timestamp)])),1628 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1629Compile directive 'nowarn_deprecated_catch' can be used to suppress1630warnings in selected modules.16311632 ┌─ src/hackney_trace.erl:1633 │1634 139 │ (catch io:format(Fd, "stop trace at ~s~n", [format_timestamp(Timestamp)])),1635 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1636Compile directive 'nowarn_deprecated_catch' can be used to suppress1637warnings in selected modules.16381639 ┌─ src/hackney_trace.erl:1640 │1641 146 │ (catch io:format(Fd, "stop trace at ~s~n", [format_timestamp(Timestamp)])),1642 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1643Compile directive 'nowarn_deprecated_catch' can be used to suppress1644warnings in selected modules.16451646 ┌─ src/hackney_trace.erl:1647 │1648 147 │ (catch file:close(Fd)),1649 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1650Compile directive 'nowarn_deprecated_catch' can be used to suppress1651warnings in selected modules.16521653 ┌─ src/hackney_trace.erl:1654 │1655 154 │ (catch io:format(Fd, "stop trace at ~s~n", [format_timestamp(Timestamp)])),1656 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1657Compile directive 'nowarn_deprecated_catch' can be used to suppress1658warnings in selected modules.16591660 ┌─ src/hackney_trace.erl:1661 │1662 155 │ (catch file:close(Fd)),1663 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1664Compile directive 'nowarn_deprecated_catch' can be used to suppress1665warnings in selected modules.16661667 ┌─ src/hackney_trace.erl:1668 │1669 161 │ (catch print_hackney_trace(Fd, Sev, Timestamp, Who,1670 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1671Compile directive 'nowarn_deprecated_catch' can be used to suppress1672warnings in selected modules.16731674 ┌─ src/hackney_trace.erl:1675 │1676 165 │ (catch print_trace(Fd, Event)),1677 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1678Compile directive 'nowarn_deprecated_catch' can be used to suppress1679warnings in selected modules.168016811682 ┌─ src/hackney_pool.erl:1683 │1684 80 │ case catch gen_server:call(Pool, {checkout, Connection, Requester, RequestRef}, CheckoutTimeout) of1685 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1686Compile directive 'nowarn_deprecated_catch' can be used to suppress1687warnings in selected modules.16881689 ┌─ src/hackney_pool.erl:1690 │1691 101 │ _ = catch hackney_connection:close(Connection, Socket),1692 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1693Compile directive 'nowarn_deprecated_catch' can be used to suppress1694warnings in selected modules.16951696 ┌─ src/hackney_pool.erl:1697 │1698 130 │ _ = catch hackney_connection:close(Connection, Socket),1699 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1700Compile directive 'nowarn_deprecated_catch' can be used to suppress1701warnings in selected modules.17021703 ┌─ src/hackney_pool.erl:1704 │1705 134 │ catch hackney_connection:close(Connection, Socket),1706 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1707Compile directive 'nowarn_deprecated_catch' can be used to suppress1708warnings in selected modules.17091710 ┌─ src/hackney_pool.erl:1711 │1712 319 │ catch Transport:close(Socket),1713 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1714Compile directive 'nowarn_deprecated_catch' can be used to suppress1715warnings in selected modules.17161717 ┌─ src/hackney_pool.erl:1718 │1719 417 │ case catch hackney_connection:controlling_process(Connection, S, self()) of1720 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1721Compile directive 'nowarn_deprecated_catch' can be used to suppress1722warnings in selected modules.17231724 ┌─ src/hackney_pool.erl:1725 │1726 423 │ _ = catch hackney_connection:close(Connection, S),1727 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1728Compile directive 'nowarn_deprecated_catch' can be used to suppress1729warnings in selected modules.17301731 ┌─ src/hackney_pool.erl:1732 │1733 444 │ catch hackney_connection:close(Connection, Socket),1734 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1735Compile directive 'nowarn_deprecated_catch' can be used to suppress1736warnings in selected modules.17371738 ┌─ src/hackney_pool.erl:1739 │1740 543 │ _ = (catch hackney_connection:close(Connection, Socket)),1741 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1742Compile directive 'nowarn_deprecated_catch' can be used to suppress1743warnings in selected modules.174417451746==> bamboo1747Compiling 26 files (.ex)1748 warning: redefining @doc attribute previously set at line 33.17491750 Please remove the duplicate docs. If instead you want to override a previously defined @doc, attach the @doc attribute to a function head (the function signature not followed by any do-block). For example:17511752 @doc """1753 new docs1754 """1755 def deliver(...)17561757 │1758 39 │ @doc "Adds email to `Bamboo.SentEmail`"1759 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1760 │1761 └─ lib/bamboo/adapters/local_adapter.ex:39: Bamboo.LocalAdapter.deliver/217621763 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1764 │1765 276 │ Logger.warn(1766 │ ~1767 │1768 └─ lib/bamboo/mailer.ex:276:12: Bamboo.Mailer.parse_opts/217691770 error: module Plug.Router is not loaded and could not be found. This may be happening because the module you are trying to load directly or indirectly depends on the current module1771 │1772 2 │ use Plug.Router1773 │ ^^^^^^^^^^^^^^^1774 │1775 └─ lib/bamboo/plug/sent_email_viewer/email_preview_plug.ex:2: Bamboo.SentEmailViewerPlug (module)17761777 error: module Plug.Router is not loaded and could not be found. This may be happening because the module you are trying to load directly or indirectly depends on the current module1778 │1779 2 │ use Plug.Router1780 │ ^^^^^^^^^^^^^^^1781 │1782 └─ lib/bamboo/plug/sent_email_api/sent_email_api_plug.ex:2: Bamboo.SentEmailApiPlug (module)178317841785== Compilation error in file lib/bamboo/plug/sent_email_viewer/email_preview_plug.ex ==1786** (CompileError) lib/bamboo/plug/sent_email_viewer/email_preview_plug.ex: cannot compile module Bamboo.SentEmailViewerPlug (errors have been logged)1787 (elixir 1.20.3) expanding macro: Kernel.use/11788 lib/bamboo/plug/sent_email_viewer/email_preview_plug.ex:2: Bamboo.SentEmailViewerPlug (module)1789could not compile dependency :bamboo, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile bamboo --force", update it with "mix deps.update bamboo" or clean it with "mix deps.clean bamboo"