Build log
nerves_system_qemu_aarch64
step_flow 1.9.0 · fail · run step_flow-1.9.0-1791114008798
2485 of 2485 lines
1Resolving Hex dependencies...2Resolution completed in 0.438s3Unchanged:4 accept 0.3.75 amqp 4.1.16 amqp_client 4.3.47 castore 1.0.218 certifi 2.17.09 circular_buffer 1.1.010 conv_case 0.2.311 cowboy 2.19.012 cowlib 2.20.0 VULNERABLE!13 EEF-CVE-2026-43966 (MEDIUM)14 aka: CVE-2026-43966, GHSA-w4f7-4cxr-rv3c15 HTTP Response Splitting via Non-VCHAR Bytes in cow_http_struct_hd:escape_string/216 https://osv.dev/vulnerability/EEF-CVE-2026-439661718 EEF-CVE-2026-43969 (LOW)19 aka: CVE-2026-43969, GHSA-g2wm-735q-3f5620 Cookie Request Header Injection via Unvalidated Encoder in cow_cookie:cookie/121 https://osv.dev/vulnerability/EEF-CVE-2026-4396922 credentials_obfuscation 3.5.023 db_connection 2.10.224 decimal 3.1.125 ecto 3.14.226 ecto_enum 1.4.027 ecto_sql 3.14.028 elixir_make 0.10.029 ex_json_schema 0.11.530 expo 1.1.131 gettext 0.26.232 h2 0.12.433 hackney 4.8.534 httpoison 3.0.035 idna 7.1.036 interactive_cmd 0.1.437 jason 1.4.538 json 1.4.139 json_xema 0.6.540 mime 2.0.741 mimerl 1.5.042 nerves 2.0.0-pre.243 nerves_discovery 0.1.544 nerves_logging 0.2.445 nerves_runtime 0.13.1346 nerves_system_bbb 2.30.247 nerves_system_br 1.34.448 nerves_system_mangopi_mq_pro 0.17.249 nerves_system_qemu_aarch64 0.4.250 nerves_system_rpi0 2.1.251 nerves_system_rpi4 2.1.252 nerves_system_rpi5 2.1.253 nerves_system_trellis 0.5.054 nerves_system_x86_64 1.34.255 nerves_toolchain_aarch64_nerves_linux_gnu 15.3.156 nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.157 nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.158 nerves_toolchain_riscv64_nerves_linux_gnu 15.3.159 nerves_toolchain_x86_64_nerves_linux_musl 15.3.160 nerves_uevent 0.1.761 open_api_spex 3.18.362 parse_trans 3.4.263 phoenix 1.7.2464 phoenix_html 4.1.165 phoenix_html_helpers 1.0.166 phoenix_pubsub 2.1.367 phoenix_template 1.1.068 phoenix_view 2.0.469 plug 1.15.6 VULNERABLE!70 EEF-CVE-2026-56814 (MEDIUM)71 aka: CVE-2026-56814, GHSA-95qv-c9g9-rm6372 Plug: multipart :length limit is not charged for part headers, enabling unbounded temp-file creation (denial of service)73 https://osv.dev/vulnerability/EEF-CVE-2026-568147475 EEF-CVE-2026-56813 (LOW)76 aka: CVE-2026-56813, GHSA-wpmj-jh88-rpgm77 Cookie attribute injection in Plug.Conn.Cookies.encode/278 https://osv.dev/vulnerability/EEF-CVE-2026-5681379 plug_crypto 2.2.080 postgrex 0.22.481 prometheus 4.13.0 RETIRED!82 (other) Breaking changes regarding automated discovery of collectors, version was promoted to 5.0.083 prometheus_ex 3.1.084 prometheus_plugs 1.1.585 property_table 0.3.486 quantile_estimator 1.0.287 quic 2.1.188 rabbit_common 4.3.489 ranch 2.2.090 recon 2.5.691 ring_logger 0.11.792 ssl_verify_fun 1.1.793 step_flow 1.9.094 tablet 0.3.395 telemetry 1.4.296 thoas 1.2.197 toolshed 0.5.098 uboot_env 1.0.299 websock 0.5.3100 websock_adapter 0.5.9101 webtransport 0.4.8102 xema 0.17.9103* Getting step_flow (Hex package)104* Getting nerves (Hex package)105* Getting ring_logger (Hex package)106* Getting toolshed (Hex package)107* Getting nerves_runtime (Hex package)108* Getting nerves_system_bbb (Hex package)109* Getting nerves_system_mangopi_mq_pro (Hex package)110* Getting nerves_system_qemu_aarch64 (Hex package)111* Getting nerves_system_rpi0 (Hex package)112* Getting nerves_system_rpi4 (Hex package)113* Getting nerves_system_rpi5 (Hex package)114* Getting nerves_system_trellis (Hex package)115* Getting nerves_system_x86_64 (Hex package)116* Getting nerves_system_br (Hex package)117* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)118* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)119* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)120* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)121* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)122* Getting nerves_logging (Hex package)123* Getting nerves_uevent (Hex package)124* Getting uboot_env (Hex package)125* Getting elixir_make (Hex package)126* Getting property_table (Hex package)127* Getting circular_buffer (Hex package)128* Getting interactive_cmd (Hex package)129* Getting nerves_discovery (Hex package)130* Getting tablet (Hex package)131* Getting amqp (Hex package)132* Getting cowboy (Hex package)133* Getting ecto (Hex package)134* Getting ecto_enum (Hex package)135* Getting ecto_sql (Hex package)136* Getting ex_json_schema (Hex package)137* Getting gettext (Hex package)138* Getting httpoison (Hex package)139* Getting jason (Hex package)140* Getting json (Hex package)141* Getting json_xema (Hex package)142* Getting open_api_spex (Hex package)143* Getting phoenix (Hex package)144* Getting phoenix_html (Hex package)145* Getting phoenix_html_helpers (Hex package)146* Getting phoenix_pubsub (Hex package)147* Getting phoenix_view (Hex package)148* Getting plug (Hex package)149* Getting postgrex (Hex package)150* Getting prometheus_ex (Hex package)151* Getting prometheus_plugs (Hex package)152* Getting xema (Hex package)153* Getting conv_case (Hex package)154* Getting accept (Hex package)155* Getting prometheus (Hex package)156* Getting quantile_estimator (Hex package)157* Getting db_connection (Hex package)158* Getting decimal (Hex package)159* Getting telemetry (Hex package)160* Getting mime (Hex package)161* Getting plug_crypto (Hex package)162* Getting phoenix_template (Hex package)163* Getting castore (Hex package)164* Getting websock_adapter (Hex package)165* Getting websock (Hex package)166* Getting hackney (Hex package)167* Getting certifi (Hex package)168* Getting h2 (Hex package)169* Getting idna (Hex package)170* Getting mimerl (Hex package)171* Getting parse_trans (Hex package)172* Getting quic (Hex package)173* Getting ssl_verify_fun (Hex package)174* Getting webtransport (Hex package)175* Getting expo (Hex package)176* Getting cowlib (Hex package)177* Getting ranch (Hex package)178* Getting amqp_client (Hex package)179* Getting credentials_obfuscation (Hex package)180* Getting rabbit_common (Hex package)181* Getting recon (Hex package)182* Getting thoas (Hex package)183Found retired packages, see above for details184Found 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==> nerves_compatibility_test189===> Analyzing applications...190===> Compiling credentials_obfuscation191==> mime192Compiling 1 file (.ex)193Generated mime app194==> circular_buffer195Compiling 1 file (.ex)196Generated circular_buffer app197==> json198Compiling 13 files (.ex)199 warning: redefining module JSON (current version loaded from /home/nerves/.elixir/lib/elixir/ebin/Elixir.JSON.beam)200 │201 1 │ defmodule JSON do202 │ ~~~~~~~~~~~~~~~~~203 │204 └─ lib/json.ex:1: JSON (module)205206 warning: redefining module JSON.Encoder (current version loaded from /home/nerves/.elixir/lib/elixir/ebin/Elixir.JSON.Encoder.beam)207 │208 1 │ defprotocol JSON.Encoder do209 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~210 │211 └─ lib/json/encoder.ex:1: JSON.Encoder (module)212213 warning: redefining module JSON.Encoder.List (current version loaded from /home/nerves/.elixir/lib/elixir/ebin/Elixir.JSON.Encoder.List.beam)214 │215 25 │ defimpl JSON.Encoder, for: List do216 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~217 │218 └─ lib/json/encoder/default_implementations.ex:25: JSON.Encoder.List (module)219220 warning: redefining module JSON.Encoder.Integer (current version loaded from /home/nerves/.elixir/lib/elixir/ebin/Elixir.JSON.Encoder.Integer.beam)221 │222 53 │ defimpl JSON.Encoder, for: [Integer, Float] do223 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~224 │225 └─ lib/json/encoder/default_implementations.ex:53: JSON.Encoder.Integer (module)226227 warning: unused require Logger228 │229 14 │ require Logger230 │ ~231 │232 └─ lib/json/logger.ex:14:3233234 warning: redefining module JSON.Encoder.Float (current version loaded from /home/nerves/.elixir/lib/elixir/ebin/Elixir.JSON.Encoder.Float.beam)235 │236 53 │ defimpl JSON.Encoder, for: [Integer, Float] do237 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~238 │239 └─ lib/json/encoder/default_implementations.ex:53: JSON.Encoder.Float (module)240241 warning: redefining module JSON.Encoder.Atom (current version loaded from /home/nerves/.elixir/lib/elixir/ebin/Elixir.JSON.Encoder.Atom.beam)242 │243 66 │ defimpl JSON.Encoder, for: Atom do244 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~245 │246 └─ lib/json/encoder/default_implementations.ex:66: JSON.Encoder.Atom (module)247248 warning: redefining module JSON.Encoder.BitString (current version loaded from /home/nerves/.elixir/lib/elixir/ebin/Elixir.JSON.Encoder.BitString.beam)249 │250 83 │ defimpl JSON.Encoder, for: BitString do251 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~252 │253 └─ lib/json/encoder/default_implementations.ex:83: JSON.Encoder.BitString (module)254255 warning: redefining module JSON.Encoder.Map (current version loaded from /home/nerves/.elixir/lib/elixir/ebin/Elixir.JSON.Encoder.Map.beam)256 │257 147 │ defimpl JSON.Encoder, for: Map do258 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~259 │260 └─ lib/json/encoder/default_implementations.ex:147: JSON.Encoder.Map (module)261262 warning: using single-quoted strings to represent charlists is deprecated.263 Use ~c"" if you indeed want a charlist or use "" instead.264 You may run "mix format --migrate" to change all single-quoted265 strings to use the ~c sigil and fix this warning.266 │267 89 │ defp apply_exponent({:ok, acc, <<exponent::utf8, rest::binary>>}) when exponent in 'eE' do268 │ ~269 │270 └─ lib/json/parser/number.ex:89:86271272 warning: use Bitwise is deprecated. import Bitwise instead273 │274 8 │ use Bitwise275 │ ~~~~~~~~~~~276 │277 └─ lib/json/parser/string.ex:8: JSON.Parser.String (module)278279 warning: use Bitwise is deprecated. import Bitwise instead280 │281 6 │ use Bitwise282 │ ~~~~~~~~~~~283 │284 └─ lib/json/parser/unicode.ex:6: JSON.Parser.Unicode (module)285286 warning: JSON.Encoder.encode/1 is undefined or private. Did you mean:287288 * encode/2289290 │291 25 │ defdelegate encode(term), to: Encoder292 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~293 │294 └─ (elixir 1.20.3) lib/json.ex:25: JSON.encode/1295296 warning: function encode/2 required by protocol JSON.Encoder is not implemented (in module JSON.Encoder.Any)297 │298 159 │ defimpl JSON.Encoder, for: Any do299 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~300 │301 └─ lib/json/encoder/default_implementations.ex:159: JSON.Encoder.Any (module)302303 warning: function encode/2 required by protocol JSON.Encoder is not implemented (in module JSON.Encoder.Map)304 │305 147 │ defimpl JSON.Encoder, for: Map do306 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~307 │308 └─ lib/json/encoder/default_implementations.ex:147: JSON.Encoder.Map (module)309310 warning: JSON.Encoder.encode/1 is undefined or private. Did you mean:311312 * encode/2313314 │315 176 │ |> JSON.Encoder.encode()316 │ ~317 │318 └─ lib/json/encoder/default_implementations.ex:176:21: JSON.Encoder.Any.encode/1319320 warning: function encode/2 required by protocol JSON.Encoder is not implemented (in module JSON.Encoder.BitString)321 │322 83 │ defimpl JSON.Encoder, for: BitString do323 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~324 │325 └─ lib/json/encoder/default_implementations.ex:83: JSON.Encoder.BitString (module)326327 warning: function encode/2 required by protocol JSON.Encoder is not implemented (in module JSON.Encoder.Record)328 │329 135 │ defimpl JSON.Encoder, for: Record do330 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~331 │332 └─ lib/json/encoder/default_implementations.ex:135: JSON.Encoder.Record (module)333334 warning: function encode/2 required by protocol JSON.Encoder is not implemented (in module JSON.Encoder.Float)335 │336 53 │ defimpl JSON.Encoder, for: [Integer, Float] do337 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~338 │339 └─ lib/json/encoder/default_implementations.ex:53: JSON.Encoder.Float (module)340341 warning: function encode/2 required by protocol JSON.Encoder is not implemented (in module JSON.Encoder.Atom)342 │343 66 │ defimpl JSON.Encoder, for: Atom do344 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~345 │346 └─ lib/json/encoder/default_implementations.ex:66: JSON.Encoder.Atom (module)347348 warning: JSON.Encoder.encode/1 is undefined or private. Did you mean:349350 * encode/2351352 │353 73 │ def encode(atom) when is_atom(atom), do: atom |> Atom.to_string() |> JSON.Encoder.encode()354 │ ~355 │356 └─ (elixir 1.20.3) lib/json/encoder/default_implementations.ex:73:85: JSON.Encoder.Atom.encode/1357358 warning: JSON.Encoder.encode/1 is undefined or private. Did you mean:359360 * encode/2361362 │363 28 │ case Encoder.encode(item) do364 │ ~365 │366 └─ lib/json/encoder/helpers.ex:28:18: JSON.Encoder.Helpers.encode_item/1367368 warning: function encode/2 required by protocol JSON.Encoder is not implemented (in module JSON.Encoder.Integer)369 │370 53 │ defimpl JSON.Encoder, for: [Integer, Float] do371 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~372 │373 └─ lib/json/encoder/default_implementations.ex:53: JSON.Encoder.Integer (module)374375 warning: function encode/2 required by protocol JSON.Encoder is not implemented (in module JSON.Encoder.HashDict)376 │377 13 │ defimpl JSON.Encoder, for: HashDict do378 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~379 │380 └─ lib/json/encoder/default_implementations.ex:13: JSON.Encoder.HashDict (module)381382 warning: function encode/2 required by protocol JSON.Encoder is not implemented (in module JSON.Encoder.List)383 │384 25 │ defimpl JSON.Encoder, for: List do385 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~386 │387 └─ lib/json/encoder/default_implementations.ex:25: JSON.Encoder.List (module)388389 warning: function encode/2 required by protocol JSON.Encoder is not implemented (in module JSON.Encoder.Tuple)390 │391 1 │ defimpl JSON.Encoder, for: Tuple do392 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~393 │394 └─ lib/json/encoder/default_implementations.ex:1: JSON.Encoder.Tuple (module)395396Generated json app397==> recon398Compiling 6 files (.erl)399Generated recon app400==> nerves_compatibility_test401===> Analyzing applications...402===> Compiling quantile_estimator403===> Analyzing applications...404===> Compiling accept405==> plug_crypto406Compiling 5 files (.ex)407Generated plug_crypto app408==> nerves_compatibility_test409===> Analyzing applications...410===> Compiling mimerl411===> Analyzing applications...412===> Compiling ranch413 ┌─ src/ranch_conns_sup.erl:414 │415 89 │ catch erlang:send(SupPid, {?MODULE, active_connections, self(), Tag},416 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.417Compile directive 'nowarn_deprecated_catch' can be used to suppress418warnings in selected modules.419420421==> ssl_verify_fun422Compiling 7 files (.erl)423Generated ssl_verify_fun app424==> nerves_compatibility_test425===> Analyzing applications...426===> Compiling h2427==> tablet428Compiling 2 files (.ex)429Generated tablet app430==> elixir_make431Compiling 8 files (.ex)432Generated elixir_make app433==> nerves_logging434 CC kmsg_tailer.o435 LD kmsg_tailer436Compiling 5 files (.ex)437Generated nerves_logging app438==> castore439Compiling 1 file (.ex)440Generated castore app441==> nerves_compatibility_test442===> Analyzing applications...443===> Compiling cowlib444==> conv_case445Compiling 1 file (.ex)446Generated conv_case app447==> nerves_discovery448Compiling 5 files (.ex)449Generated nerves_discovery app450==> ring_logger451Compiling 7 files (.ex)452Generated ring_logger app453==> decimal454Compiling 4 files (.ex)455Generated decimal app456==> jason457Compiling 10 files (.ex)458Generated jason app459==> xema460Compiling 19 files (.ex)461Generated xema app462==> ex_json_schema463Compiling 40 files (.ex)464Generated ex_json_schema app465==> interactive_cmd466Compiling 1 file (.ex)467Generated interactive_cmd app468==> nerves469Compiling 65 files (.ex)470 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)471 │472 6 │ defmodule Mix.Tasks.Nerves.Init do473 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~474 │475 └─ lib/mix/tasks/nerves.init.ex:6: Mix.Tasks.Nerves.Init (module)476477 warning: redefining module Nerves (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.beam)478 │479 6 │ defmodule Nerves do480 │ ~~~~~~~~~~~~~~~~~~~481 │482 └─ lib/nerves.ex:6: Nerves (module)483484 warning: redefining module Nerves.ArtifactResolver (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.ArtifactResolver.beam)485 │486 5 │ defmodule Nerves.ArtifactResolver do487 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~488 │489 └─ lib/nerves/artifact_resolver.ex:5: Nerves.ArtifactResolver (module)490491 warning: redefining module Nerves.BuildAction.AppModes (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.AppModes.beam)492 │493 6 │ defmodule Nerves.BuildAction.AppModes do494 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~495 │496 └─ lib/nerves/build_action/app_modes.ex:6: Nerves.BuildAction.AppModes (module)497498 warning: redefining module Nerves.BuildAction.CheckExecutables (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.CheckExecutables.beam)499 │500 5 │ defmodule Nerves.BuildAction.CheckExecutables do501 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~502 │503 └─ lib/nerves/build_action/check_executables.ex:5: Nerves.BuildAction.CheckExecutables (module)504505 warning: redefining module Nerves.BuildAction.Erlinit (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.Erlinit.beam)506 │507 8 │ defmodule Nerves.BuildAction.Erlinit do508 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~509 │510 └─ lib/nerves/build_action/erlinit.ex:8: Nerves.BuildAction.Erlinit (module)511512 warning: redefining module Nerves.BuildAction.Firmware (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.Firmware.beam)513 │514 5 │ defmodule Nerves.BuildAction.Firmware do515 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~516 │517 └─ lib/nerves/build_action/firmware.ex:5: Nerves.BuildAction.Firmware (module)518519 warning: redefining module Nerves.BuildAction.IExStartupCheck (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.IExStartupCheck.beam)520 │521 7 │ defmodule Nerves.BuildAction.IExStartupCheck do522 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~523 │524 └─ lib/nerves/build_action/iex_startup_check.ex:7: Nerves.BuildAction.IExStartupCheck (module)525526 warning: redefining module Nerves.BuildAction.NervesV1System (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1System.beam)527 │528 5 │ defmodule Nerves.BuildAction.NervesV1System do529 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~530 │531 └─ lib/nerves/build_action/nerves_v1_system.ex:5: Nerves.BuildAction.NervesV1System (module)532533 warning: redefining module Nerves.BuildAction.NervesV1Toolchain (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1Toolchain.beam)534 │535 5 │ defmodule Nerves.BuildAction.NervesV1Toolchain do536 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~537 │538 └─ lib/nerves/build_action/nerves_v1_toolchain.ex:5: Nerves.BuildAction.NervesV1Toolchain (module)539540 warning: redefining module Nerves.BuildAction.Rootfs (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.Rootfs.beam)541 │542 5 │ defmodule Nerves.BuildAction.Rootfs do543 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~544 │545 └─ lib/nerves/build_action/rootfs.ex:5: Nerves.BuildAction.Rootfs (module)546547 warning: redefining module Nerves.BuildAction.SortApps (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.SortApps.beam)548 │549 6 │ defmodule Nerves.BuildAction.SortApps do550 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~551 │552 └─ lib/nerves/build_action/sort_apps.ex:6: Nerves.BuildAction.SortApps (module)553554 warning: redefining module Nerves.BuildAction.StripAll (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.StripAll.beam)555 │556 5 │ defmodule Nerves.BuildAction.StripAll do557 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~558 │559 └─ lib/nerves/build_action/strip_all.ex:5: Nerves.BuildAction.StripAll (module)560561 warning: redefining module Nerves.BuildAction.Trimmer (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildAction.Trimmer.beam)562 │563 5 │ defmodule Nerves.BuildAction.Trimmer do564 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~565 │566 └─ lib/nerves/build_action/trimmer.ex:5: Nerves.BuildAction.Trimmer (module)567568 warning: redefining module Nerves.BuildPlan (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildPlan.beam)569 │570 5 │ defmodule Nerves.BuildPlan do571 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~572 │573 └─ lib/nerves/build_plan.ex:5: Nerves.BuildPlan (module)574575 warning: redefining module Nerves.BuildPlan.Checks (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.BuildPlan.Checks.beam)576 │577 5 │ defmodule Nerves.BuildPlan.Checks do578 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~579 │580 └─ lib/nerves/build_plan/checks.ex:5: Nerves.BuildPlan.Checks (module)581582 warning: redefining module Nerves.Container (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.Container.beam)583 │584 6 │ defmodule Nerves.Container do585 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~586 │587 └─ lib/nerves/container.ex:6: Nerves.Container (module)588589 warning: redefining module Nerves.Fingerprint (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.Fingerprint.beam)590 │591 5 │ defmodule Nerves.Fingerprint do592 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~593 │594 └─ lib/nerves/fingerprint.ex:5: Nerves.Fingerprint (module)595596 warning: redefining module Nerves.MixPackage (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.MixPackage.beam)597 │598 5 │ defmodule Nerves.MixPackage do599 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~600 │601 └─ lib/nerves/mix_package.ex:5: Nerves.MixPackage (module)602603 warning: redefining module Nerves.Paths (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.Paths.beam)604 │605 5 │ defmodule Nerves.Paths do606 │ ~~~~~~~~~~~~~~~~~~~~~~~~~607 │608 └─ lib/nerves/paths.ex:5: Nerves.Paths (module)609610 warning: redefining module Nerves.TargetTuple (current version loaded from /work/proj/_build/qemu_aarch64/lib/nerves/ebin/Elixir.Nerves.TargetTuple.beam)611 │612 5 │ defmodule Nerves.TargetTuple do613 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~614 │615 └─ lib/nerves/target_tuple.ex:5: Nerves.TargetTuple (module)616617Generated nerves app618==> nerves_toolchain_aarch64_nerves_linux_gnu619Compiling 1 file (.ex)620Generated nerves_toolchain_aarch64_nerves_linux_gnu app621==> nerves_system_qemu_aarch64622Compiling 1 file (.ex)623Generated nerves_system_qemu_aarch64 app624==> nerves_compatibility_test625===> Analyzing applications...626===> Compiling idna627===> Analyzing applications...628===> Compiling telemetry629==> ecto630Compiling 56 files (.ex)631Generated ecto app632==> db_connection633Compiling 18 files (.ex)634Generated db_connection app635==> nerves_compatibility_test636===> Analyzing applications...637===> Compiling cowboy638==> phoenix_html639Compiling 6 files (.ex)640 warning: the 1st pattern in clause will never match:641642 60643644 because it is expected to receive type:645646 dynamic(empty_list() or non_empty_list(term(), term()))647648 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())649650 type warning found at:651 │652 56 │ def to_iodata(?<), do: "<"653 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~654 │655 └─ lib/phoenix_html/safe.ex:56: Phoenix.HTML.Safe.List.to_iodata/1656657 warning: the 1st pattern in clause will never match:658659 62660661 because it is expected to receive type:662663 dynamic(empty_list() or non_empty_list(term(), term()))664665 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())666667 type warning found at:668 │669 57 │ def to_iodata(?>), do: ">"670 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~671 │672 └─ lib/phoenix_html/safe.ex:57: Phoenix.HTML.Safe.List.to_iodata/1673674 warning: the 1st pattern in clause will never match:675676 38677678 because it is expected to receive type:679680 dynamic(empty_list() or non_empty_list(term(), term()))681682 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())683684 type warning found at:685 │686 58 │ def to_iodata(?&), do: "&"687 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~688 │689 └─ lib/phoenix_html/safe.ex:58: Phoenix.HTML.Safe.List.to_iodata/1690691 warning: the 1st pattern in clause will never match:692693 34694695 because it is expected to receive type:696697 dynamic(empty_list() or non_empty_list(term(), term()))698699 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())700701 type warning found at:702 │703 59 │ def to_iodata(?"), do: """704 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~705 │706 └─ lib/phoenix_html/safe.ex:59: Phoenix.HTML.Safe.List.to_iodata/1707708 warning: the 1st pattern in clause will never match:709710 39711712 because it is expected to receive type:713714 dynamic(empty_list() or non_empty_list(term(), term()))715716 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())717718 type warning found at:719 │720 60 │ def to_iodata(?'), do: "'"721 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~722 │723 └─ lib/phoenix_html/safe.ex:60: Phoenix.HTML.Safe.List.to_iodata/1724725 warning: the 1st pattern in clause will never match:726727 {:safe, data}728729 because it is expected to receive type:730731 dynamic(empty_list() or non_empty_list(term(), term()))732733 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())734735 type warning found at:736 │737 76 │ def to_iodata({:safe, data}) do738 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~739 │740 └─ lib/phoenix_html/safe.ex:76: Phoenix.HTML.Safe.List.to_iodata/1741742 warning: the following clause is redundant:743744 def to_iodata(other)745746 it has type:747748 dynamic(empty_list() or non_empty_list(term(), term()))749750 previous clauses have already matched on the following types:751752 non_empty_list(term(), term())753 empty_list()754755 │756 80 │ def to_iodata(other) do757 │ ~758 │759 └─ lib/phoenix_html/safe.ex:80:7: Phoenix.HTML.Safe.List.to_iodata/1760761 warning: the 1st pattern in clause will never match:762763 h764765 because it is expected to receive type:766767 dynamic(empty_list() or non_empty_list(term(), term()))768769 where "h" was given the type:770771 # type: integer()772 # from: lib/phoenix_html/safe.ex:62:25773 is_integer(h)774775 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())776777 type warning found at:778 │779 62 │ def to_iodata(h) when is_integer(h) and h <= 255 do780 │ ~781 │782 └─ lib/phoenix_html/safe.ex:62:17: Phoenix.HTML.Safe.List.to_iodata/1783784 warning: the 1st pattern in clause will never match:785786 h787788 because it is expected to receive type:789790 dynamic(empty_list() or non_empty_list(term(), term()))791792 where "h" was given the type:793794 # type: integer()795 # from: lib/phoenix_html/safe.ex:66:25796 is_integer(h)797798 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())799800 type warning found at:801 │802 66 │ def to_iodata(h) when is_integer(h) do803 │ ~804 │805 └─ lib/phoenix_html/safe.ex:66:17: Phoenix.HTML.Safe.List.to_iodata/1806807 warning: the 1st pattern in clause will never match:808809 h810811 because it is expected to receive type:812813 dynamic(empty_list() or non_empty_list(term(), term()))814815 where "h" was given the type:816817 # type: binary()818 # from: lib/phoenix_html/safe.ex:72:25819 is_binary(h)820821 hint: defimpl for List requires its callbacks to match exclusively on empty_list() or non_empty_list(term(), term())822823 type warning found at:824 │825 72 │ def to_iodata(h) when is_binary(h) do826 │ ~827 │828 └─ lib/phoenix_html/safe.ex:72:17: Phoenix.HTML.Safe.List.to_iodata/1829830Generated phoenix_html app831==> phoenix_template832Compiling 4 files (.ex)833Generated phoenix_template app834==> expo835Compiling 2 files (.erl)836Compiling 22 files (.ex)837Generated expo app838==> gettext839Compiling 18 files (.ex)840 warning: unused require Gettext.Macros841 │842 594 │ require Gettext.Macros843 │ ~844 │845 └─ lib/gettext.ex:594:3846847 warning: Kernel.ParallelCompiler.async/1 is deprecated. Use `pmap/2` instead848 │849 426 │ Kernel.ParallelCompiler.async(fn ->850 │ ~851 │852 └─ lib/gettext/compiler.ex:426:39: Gettext.Compiler.compile_po_files/3853854 warning: the following clause is redundant:855856 defp ensure_empty_msgstr!(%Expo.Message.Plural{} = message)857858 it has type:859860 dynamic(%Expo.Message.Plural{})861862 previous clauses have already matched on the following types:863864 %Expo.Message.Singular{}865 %Expo.Message.Plural{}866867 │868 391 │ defp ensure_empty_msgstr!(%Message.Plural{} = message) do869 │ ~870 │871 └─ lib/gettext/extractor.ex:391:8: Gettext.Extractor.ensure_empty_msgstr!/1872873Generated gettext app874==> phoenix_pubsub875Compiling 11 files (.ex)876 warning: unused require Logger877 │878 74 │ require Logger879 │ ~880 │881 └─ lib/phoenix/tracker.ex:74:3882883 warning: a struct for Phoenix.Tracker.Replica is expected on struct update:884885 %Phoenix.Tracker.Replica{replica | status: :permdown}886887 but got type:888889 dynamic()890891 where "replica" was given the type:892893 # type: dynamic()894 # from: lib/phoenix/tracker/replica.ex:72:17895 replica896897 when defining the variable "replica", you must also pattern match on "%Phoenix.Tracker.Replica{}"898899 type warning found at:900 │901 72 │ defp permdown(replica), do: %Replica{replica | status: :permdown}902 │ ~903 │904 └─ lib/phoenix/tracker/replica.ex:72:31: Phoenix.Tracker.Replica.permdown/1905906 warning: a struct for Phoenix.Tracker.Replica is expected on struct update:907908 %Phoenix.Tracker.Replica{replica | status: :down}909910 but got type:911912 dynamic()913914 where "replica" was given the type:915916 # type: dynamic()917 # from: lib/phoenix/tracker/replica.ex:74:13918 replica919920 when defining the variable "replica", you must also pattern match on "%Phoenix.Tracker.Replica{}"921922 type warning found at:923 │924 74 │ defp down(replica), do: %Replica{replica | status: :down}925 │ ~926 │927 └─ lib/phoenix/tracker/replica.ex:74:27: Phoenix.Tracker.Replica.down/1928929 warning: a struct for Phoenix.Tracker.State is expected on struct update:930931 %Phoenix.Tracker.State{state | clouds: pruned_clouds, delta: new_delta}932933 but got type:934935 dynamic(%{936 ...,937 clouds: term(),938 delta: %{..., clouds: term(), mode: :delta, values: map()},939 values: term()940 })941942 where "state" was given the types:943944 # type: dynamic(%{..., values: term()})945 # from: lib/phoenix/tracker/state.ex:94:49946 :ets.lookup(state.values, {topic, pid, key})947948 # type: dynamic(%{..., clouds: term(), values: term()})949 # from: lib/phoenix/tracker/state.ex:95:21950 delete_tag(state.clouds, tag)951952 # type: dynamic(%{953 ...,954 clouds: term(),955 delta: %{..., clouds: term(), mode: :delta, values: map()},956 values: term()957 })958 # from: lib/phoenix/tracker/state.ex:96:17959 remove_delta_tag(state.delta, tag)960961 when defining the variable "state", you must also pattern match on "%Phoenix.Tracker.State{}"962963 type warning found at:964 │965 97 │ state = bump_clock(%State{state | clouds: pruned_clouds, delta: new_delta})966 │ ~967 │968 └─ lib/phoenix/tracker/state.ex:97:24: Phoenix.Tracker.State.leave_join/5969970 warning: a struct for Phoenix.Tracker.Replica is expected on struct update:971972 %Phoenix.Tracker.Replica{replica | last_heartbeat_at: now_ms()}973974 but got type:975976 dynamic()977978 where "replica" was given the type:979980 # type: dynamic()981 # from: lib/phoenix/tracker/replica.ex:76:29982 replica983984 when defining the variable "replica", you must also pattern match on "%Phoenix.Tracker.Replica{}"985986 type warning found at:987 │988 77 │ %Replica{replica | last_heartbeat_at: now_ms()}989 │ ~990 │991 └─ lib/phoenix/tracker/replica.ex:77:5: Phoenix.Tracker.Replica.touch_last_heartbeat/1992993 warning: a struct for Phoenix.Tracker.State is expected on struct update:994995 %Phoenix.Tracker.State{delta | values: Map.put(delta.values, tag, {pid, topic, key, meta})}996997 but got type:998999 dynamic()10001001 where "delta" was given the type:10021003 # type: dynamic()1004 # from: lib/phoenix/tracker/state.ex:506:361005 %Phoenix.Tracker.State{delta: delta} = state10061007 when defining the variable "delta", you must also pattern match on "%Phoenix.Tracker.State{}"10081009 type warning found at:1010 │1011 510 │ new_delta = %State{delta | values: Map.put(delta.values, tag, {pid, topic, key, meta})}1012 │ ~1013 │1014 └─ lib/phoenix/tracker/state.ex:510:17: Phoenix.Tracker.State.do_add/510151016 warning: a struct for Phoenix.Tracker.State is expected on struct update:10171018 %Phoenix.Tracker.State{delta | clouds: put_tag(delta.clouds, {rep, new_clock})}10191020 but got type:10211022 dynamic()10231024 where "delta" was given the type:10251026 # type: dynamic()1027 # from: lib/phoenix/tracker/state.ex:586:991028 %Phoenix.Tracker.State{mode: :normal, replica: rep, clouds: clouds, context: ctx, delta: delta} =1029 state10301031 when defining the variable "delta", you must also pattern match on "%Phoenix.Tracker.State{}"10321033 type warning found at:1034 │1035 592 │ delta: %State{delta | clouds: put_tag(delta.clouds, {rep, new_clock})}}1036 │ ~1037 │1038 └─ lib/phoenix/tracker/state.ex:592:19: Phoenix.Tracker.State.bump_clock/110391040 warning: a struct for Phoenix.Tracker.State is expected on struct update:10411042 %Phoenix.Tracker.State{delta | range: {start_clock, new_end}}10431044 but got type:10451046 dynamic(%{..., range: {term(), term()}})10471048 where "delta" was given the type:10491050 # type: dynamic(%{..., range: {term(), term()}})1051 # from: lib/phoenix/tracker/state.ex:596:301052 {start_clock, end_clock} = delta.range10531054 when defining the variable "delta", you must also pattern match on "%Phoenix.Tracker.State{}"10551056 type warning found at:1057 │1058 600 │ delta: %State{delta | range: {start_clock, new_end}}}1059 │ ~1060 │1061 └─ lib/phoenix/tracker/state.ex:600:19: Phoenix.Tracker.State.put_context/210621063Generated phoenix_pubsub app1064==> nerves_compatibility_test1065===> Analyzing applications...1066===> Compiling thoas1067===> Analyzing applications...1068===> Compiling rabbit_common1069gen_server2.erl:334:10: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1070Compile directive 'nowarn_deprecated_catch' can be used to suppress1071warnings in selected modules.1072gen_server2.erl:342:10: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1073Compile directive 'nowarn_deprecated_catch' can be used to suppress1074warnings in selected modules.1075gen_server2.erl:353:5: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1076Compile directive 'nowarn_deprecated_catch' can be used to suppress1077warnings in selected modules.1078gen_server2.erl:356:5: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1079Compile directive 'nowarn_deprecated_catch' can be used to suppress1080warnings in selected modules.1081gen_server2.erl:359:5: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1082Compile directive 'nowarn_deprecated_catch' can be used to suppress1083warnings in selected modules.1084gen_server2.erl:366:5: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1085Compile directive 'nowarn_deprecated_catch' can be used to suppress1086warnings in selected modules.1087gen_server2.erl:378:5: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1088Compile directive 'nowarn_deprecated_catch' can be used to suppress1089warnings in selected modules.1090gen_server2.erl:439:13: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1091Compile directive 'nowarn_deprecated_catch' can be used to suppress1092warnings in selected modules.1093gen_server2.erl:448:5: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1094Compile directive 'nowarn_deprecated_catch' can be used to suppress1095warnings in selected modules.1096gen_server2.erl:452:5: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1097Compile directive 'nowarn_deprecated_catch' can be used to suppress1098warnings in selected modules.1099gen_server2.erl:489:10: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1100Compile directive 'nowarn_deprecated_catch' can be used to suppress1101warnings in selected modules.1102gen_server2.erl:565:10: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1103Compile directive 'nowarn_deprecated_catch' can be used to suppress1104warnings in selected modules.1105gen_server2.erl:622:10: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1106Compile directive 'nowarn_deprecated_catch' can be used to suppress1107warnings in selected modules.1108gen_server2.erl:729:18: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1109Compile directive 'nowarn_deprecated_catch' can be used to suppress1110warnings in selected modules.1111gen_server2.erl:744:18: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1112Compile directive 'nowarn_deprecated_catch' can be used to suppress1113warnings in selected modules.1114gen_server2.erl:811:17: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1115Compile directive 'nowarn_deprecated_catch' can be used to suppress1116warnings in selected modules.1117gen_server2.erl:872:5: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1118Compile directive 'nowarn_deprecated_catch' can be used to suppress1119warnings in selected modules.1120gen_server2.erl:932:10: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1121Compile directive 'nowarn_deprecated_catch' can be used to suppress1122warnings in selected modules.1123gen_server2.erl:985:18: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1124Compile directive 'nowarn_deprecated_catch' can be used to suppress1125warnings in selected modules.1126gen_server2.erl:1035:10: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1127Compile directive 'nowarn_deprecated_catch' can be used to suppress1128warnings in selected modules.1129gen_server2.erl:1048:18: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1130Compile directive 'nowarn_deprecated_catch' can be used to suppress1131warnings in selected modules.1132gen_server2.erl:1056:14: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1133Compile directive 'nowarn_deprecated_catch' can be used to suppress1134warnings in selected modules.1135gen_server2.erl:1112:10: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1136Compile directive 'nowarn_deprecated_catch' can be used to suppress1137warnings in selected modules.1138gen_server2.erl:1158:10: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1139Compile directive 'nowarn_deprecated_catch' can be used to suppress1140warnings in selected modules.1141gen_server2.erl:1249:10: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1142Compile directive 'nowarn_deprecated_catch' can be used to suppress1143warnings in selected modules.1144gen_server2.erl:1329:39: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1145Compile directive 'nowarn_deprecated_catch' can be used to suppress1146warnings in selected modules.1147gen_server2.erl:1339:39: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1148Compile directive 'nowarn_deprecated_catch' can be used to suppress1149warnings in selected modules.1150gen_server2.erl:1377:23: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1151Compile directive 'nowarn_deprecated_catch' can be used to suppress1152warnings in selected modules.11531154rabbit_registry.erl:49:10: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1155Compile directive 'nowarn_deprecated_catch' can be used to suppress1156warnings in selected modules.1157rabbit_registry.erl:167:10: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1158Compile directive 'nowarn_deprecated_catch' can be used to suppress1159warnings in selected modules.11601161rabbit_env.erl:1354:12: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1162Compile directive 'nowarn_deprecated_catch' can be used to suppress1163warnings in selected modules.1164rabbit_env.erl:1385:12: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1165Compile directive 'nowarn_deprecated_catch' can be used to suppress1166warnings in selected modules.1167rabbit_env.erl:1426:12: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1168Compile directive 'nowarn_deprecated_catch' can be used to suppress1169warnings in selected modules.11701171rabbit_routing_parser.erl:54:27: Warning: a pattern `P1=P2` where both sides are constructors1172may yield an error in a future version of Erlang/OTP.1173Note that a pattern such as `{a,B}={Y,Z} -> ...` can always be1174written in a unified form `{a=Y,B=Z} -> ...`.1175Compile directive 'nowarn_match_alias_pats' can be used to suppress1176warnings in selected modules.11771178supervisor2.erl:441:10: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1179Compile directive 'nowarn_deprecated_catch' can be used to suppress1180warnings in selected modules.1181supervisor2.erl:1453:5: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1182Compile directive 'nowarn_deprecated_catch' can be used to suppress1183warnings in selected modules.11841185rabbit_net.erl:183:5: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1186Compile directive 'nowarn_deprecated_catch' can be used to suppress1187warnings in selected modules.11881189rabbit_nodes_common.erl:57:8: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1190Compile directive 'nowarn_deprecated_catch' can be used to suppress1191warnings in selected modules.11921193rabbit_misc.erl:1520:5: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1194Compile directive 'nowarn_deprecated_catch' can be used to suppress1195warnings in selected modules.11961197===> Analyzing applications...1198===> Compiling amqp_client1199amqp_network_connection.erl:49:5: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1200Compile directive 'nowarn_deprecated_catch' can be used to suppress1201warnings in selected modules.1202amqp_network_connection.erl:270:25: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1203Compile directive 'nowarn_deprecated_catch' can be used to suppress1204warnings in selected modules.12051206amqp_channel.erl:868:5: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1207Compile directive 'nowarn_deprecated_catch' can be used to suppress1208warnings in selected modules.1209amqp_channel.erl:876:5: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1210Compile directive 'nowarn_deprecated_catch' can be used to suppress1211warnings in selected modules.1212amqp_channel.erl:884:9: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1213Compile directive 'nowarn_deprecated_catch' can be used to suppress1214warnings in selected modules.12151216uri_parser.erl:51:19: Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1217Compile directive 'nowarn_deprecated_catch' can be used to suppress1218warnings in selected modules.12191220==> amqp1221Compiling 16 files (.ex)1222Generated amqp app1223==> json_xema1224Compiling 4 files (.ex)1225Generated json_xema app1226==> phoenix_view1227Compiling 1 file (.ex)1228 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 operator1229 │1230 655 │ <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix1231 │ ~1232 │1233 └─ lib/phoenix_view.ex:655:29: Phoenix.View.unsuffix/212341235Generated phoenix_view app1236==> nerves_compatibility_test1237===> Analyzing applications...1238===> Compiling prometheus1239==> prometheus_ex1240Compiling 19 files (.ex)1241 warning: unused require Prometheus.Metric1242 │1243 4 │ require Prometheus.Metric1244 │ ~1245 │1246 └─ lib/prometheus/erlang.ex:4:312471248Generated prometheus_ex app1249==> nerves_compatibility_test1250===> Analyzing applications...1251===> Compiling certifi1252==> plug1253Compiling 1 file (.erl)1254warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"1255 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/21256 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/11257 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/51258 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/21259 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/41260 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/212611262Compiling 40 files (.ex)1263 warning: unused require Bitwise1264 │1265 105 │ require Bitwise1266 │ ~1267 │1268 └─ lib/plug/csrf_protection.ex:105:312691270 warning: unused require Logger1271 │1272 52 │ require Logger1273 │ ~1274 │1275 └─ lib/plug/request_id.ex:52:312761277 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 operator1278 │1279 160 │ <<prefix::binary-size(prefix_size), char, suffix::binary-size(suffix_size)>> = segment1280 │ ~1281 │1282 └─ lib/plug/router/utils.ex:160:31: Plug.Router.Utils.build_path_clause/712831284 warning: the variable "suffix_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1285 │1286 160 │ <<prefix::binary-size(prefix_size), char, suffix::binary-size(suffix_size)>> = segment1287 │ ~1288 │1289 └─ lib/plug/router/utils.ex:160:71: Plug.Router.Utils.build_path_clause/712901291 warning: the following clause will never match:12921293 {:error, reason} ->12941295 because it attempts to match on the result of:12961297 IO.binwrite(device, contents)12981299 which has type:13001301 dynamic(not {:error, term()})13021303 type warning found at:1304 │1305 275 │ {:error, reason} ->1306 │ ~~~~~~~~~~~~~~~~~~~1307 │1308 └─ lib/plug/parsers/multipart.ex:275: Plug.Parsers.MULTIPART.binwrite!/213091310 warning: a struct for Plug.Conn is expected on struct update:13111312 %Plug.Conn{conn | method: method}13131314 but got type:13151316 dynamic()13171318 where "conn" was given the type:13191320 # type: dynamic()1321 # from: lib/plug/method_override.ex:60:241322 conn13231324 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"13251326 type warning found at:1327 │1328 64 │ %Plug.Conn{conn | method: method}1329 │ ~1330 │1331 └─ lib/plug/method_override.ex:64:7: Plug.MethodOverride.override_method/213321333 warning: a struct for Plug.Conn is expected on struct update:13341335 %Plug.Conn{1336 conn1337 | adapter: {Plug.Adapters.Test.Conn, state},1338 host: uri.host || conn.host || "www.example.com",1339 method: method,1340 owner: owner,1341 path_info: split_path(uri.path),1342 port: uri.port || conn_port,1343 remote_ip: conn.remote_ip || {127, 0, 0, 1},1344 req_headers: req_headers,1345 request_path: uri.path,1346 query_string: query,1347 query_params: query_params || %Plug.Conn.Unfetched{aspect: :query_params},1348 body_params: body_params || %Plug.Conn.Unfetched{aspect: :body_params},1349 params: params || %Plug.Conn.Unfetched{aspect: :params},1350 scheme: String.to_atom(String.downcase(uri.scheme || "http"))1351 }13521353 but got type:13541355 dynamic(%{..., adapter: {atom(), term()}, port: term(), req_headers: term()})13561357 where "conn" was given the types:13581359 # type: dynamic(%{..., req_headers: term()})1360 # from: lib/plug/adapters/test/conn.ex:21:71361 body_or_params(body_or_params, query, conn.req_headers, method)13621363 # type: dynamic(%{..., adapter: {atom(), term()}, req_headers: term()})1364 # from: lib/plug/adapters/test/conn.ex:30:221365 get_from_adapter(conn, :get_http_protocol, :"HTTP/1.1")13661367 # type: dynamic(%{..., adapter: {atom(), term()}, port: term(), req_headers: term()})1368 # from: lib/plug/adapters/test/conn.ex:39:301369 conn.port != 013701371 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"13721373 type warning found at:1374 │1375 41 │ %Plug.Conn{1376 │ ~1377 │1378 └─ lib/plug/adapters/test/conn.ex:41:5: Plug.Adapters.Test.Conn.conn/413791380Generated plug app1381==> open_api_spex1382Compiling 80 files (.ex)1383 warning: unused require Mix.Generator1384 │1385 29 │ require Mix.Generator1386 │ ~1387 │1388 └─ lib/mix/tasks/openapi.spec.json.ex:29:313891390 warning: unused require Mix.Generator1391 │1392 26 │ require Mix.Generator1393 │ ~1394 │1395 └─ lib/mix/tasks/openapi.spec.yaml.ex:26:313961397 warning: unused require Mix.Generator1398 │1399 5 │ require Mix.Generator1400 │ ~1401 │1402 └─ lib/open_api_spex/export_spec.ex:5:314031404 warning: the following clause is redundant:14051406 defp resolve_schema_modules_from_media_type(media = %OpenApiSpex.MediaType{}, schemas)14071408 it has type:14091410 dynamic(%OpenApiSpex.MediaType{}), dynamic()14111412 previous clauses have already matched on the following types:14131414 %OpenApiSpex.MediaType{}, term()14151416 │1417 141 │ defp resolve_schema_modules_from_media_type(media = %MediaType{}, schemas) do1418 │ ~1419 │1420 └─ lib/open_api_spex/schema_resolver.ex:141:8: OpenApiSpex.SchemaResolver.resolve_schema_modules_from_media_type/214211422 warning: a struct for OpenApiSpex.Cast is expected on struct update:14231424 %OpenApiSpex.Cast{ctx | errors: ctx.errors ++ errors}14251426 but got type:14271428 dynamic(1429 %OpenApiSpex.Cast{1430 schema: %{..., allOf: non_empty_list(term(), term()), "x-validate": atom() and not nil}1431 } or1432 (%OpenApiSpex.Cast{1433 schema:1434 %{1435 ...,1436 allOf: non_empty_list(term(), term()),1437 anyOf: empty_list() or non_empty_list(term(), term()),1438 type: term()1439 } and1440 not (%{..., "x-validate": not nil} or %{..., discriminator: map(), type: :object} or1441 %{..., enum: empty_list() or non_empty_list(term(), term())})1442 } and1443 not (%OpenApiSpex.Cast{value: nil, schema: %{..., nullable: false}} or1444 %OpenApiSpex.Cast{1445 value: nil,1446 schema: %{..., oneOf: empty_list() or non_empty_list(term(), term())}1447 } or1448 %OpenApiSpex.Cast{1449 value: nil,1450 schema: %{..., allOf: empty_list() or non_empty_list(term(), term())}1451 } or %OpenApiSpex.Cast{value: nil, schema: %{..., nullable: true}} or1452 %OpenApiSpex.Cast{1453 value: nil,1454 schema: %{..., anyOf: empty_list() or non_empty_list(term(), term())}1455 } or %OpenApiSpex.Cast{value: nil})) or1456 (%OpenApiSpex.Cast{1457 schema:1458 %{..., allOf: non_empty_list(term(), term()), discriminator: map(), type: :object} and1459 not (%{..., "x-validate": not nil} or1460 %{..., enum: empty_list() or non_empty_list(term(), term())})1461 } and1462 not (%OpenApiSpex.Cast{value: nil, schema: %{..., nullable: false}} or1463 %OpenApiSpex.Cast{1464 value: nil,1465 schema: %{..., oneOf: empty_list() or non_empty_list(term(), term())}1466 } or1467 %OpenApiSpex.Cast{1468 value: nil,1469 schema: %{..., allOf: empty_list() or non_empty_list(term(), term())}1470 } or %OpenApiSpex.Cast{value: nil, schema: %{..., nullable: true}} or1471 %OpenApiSpex.Cast{1472 value: nil,1473 schema: %{..., anyOf: empty_list() or non_empty_list(term(), term())}1474 } or %OpenApiSpex.Cast{value: nil})) or1475 (%OpenApiSpex.Cast{1476 schema:1477 %{..., allOf: non_empty_list(term(), term()), enum: empty_list()} and1478 not %{..., "x-validate": not nil}1479 } and1480 not (%OpenApiSpex.Cast{value: nil, schema: %{..., nullable: false}} or1481 %OpenApiSpex.Cast{1482 value: nil,1483 schema: %{..., oneOf: empty_list() or non_empty_list(term(), term())}1484 } or1485 %OpenApiSpex.Cast{1486 value: nil,1487 schema: %{..., allOf: empty_list() or non_empty_list(term(), term())}1488 } or %OpenApiSpex.Cast{value: nil, schema: %{..., nullable: true}} or1489 %OpenApiSpex.Cast{1490 value: nil,1491 schema: %{..., anyOf: empty_list() or non_empty_list(term(), term())}1492 } or %OpenApiSpex.Cast{value: nil})) or1493 (%OpenApiSpex.Cast{1494 schema:1495 %{..., allOf: non_empty_list(term(), term()), enum: non_empty_list(term(), term())} and1496 not %{..., "x-validate": not nil}1497 } and1498 not (%OpenApiSpex.Cast{value: nil, schema: %{..., nullable: false}} or1499 %OpenApiSpex.Cast{1500 value: nil,1501 schema: %{..., oneOf: empty_list() or non_empty_list(term(), term())}1502 } or1503 %OpenApiSpex.Cast{1504 value: nil,1505 schema: %{..., allOf: empty_list() or non_empty_list(term(), term())}1506 } or %OpenApiSpex.Cast{value: nil, schema: %{..., nullable: true}} or1507 %OpenApiSpex.Cast{1508 value: nil,1509 schema: %{..., anyOf: empty_list() or non_empty_list(term(), term())}1510 } or %OpenApiSpex.Cast{value: nil})) or1511 (%OpenApiSpex.Cast{1512 schema:1513 %{..., allOf: non_empty_list(term(), term()), type: term()} and1514 not (%{..., "x-validate": not nil} or %{..., discriminator: map(), type: :object} or1515 %{..., anyOf: empty_list() or non_empty_list(term(), term()), type: term()} or1516 %{..., enum: empty_list() or non_empty_list(term(), term())})1517 } and1518 not (%OpenApiSpex.Cast{value: nil} or1519 %OpenApiSpex.Cast{value: nil, schema: %{..., nullable: true}} or1520 %OpenApiSpex.Cast{1521 value: nil,1522 schema: %{..., allOf: empty_list() or non_empty_list(term(), term())}1523 } or1524 %OpenApiSpex.Cast{1525 value: nil,1526 schema: %{..., oneOf: empty_list() or non_empty_list(term(), term())}1527 } or %OpenApiSpex.Cast{value: nil, schema: %{..., nullable: false}})) or1528 (%OpenApiSpex.Cast{1529 value: nil,1530 schema: %{..., allOf: non_empty_list(term(), term()), nullable: false}1531 } and1532 not %OpenApiSpex.Cast{1533 schema: %OpenApiSpex.Reference{} or %{..., "x-validate": not nil} or nil1534 }) or1535 (%OpenApiSpex.Cast{1536 value: nil,1537 schema:1538 %{..., allOf: non_empty_list(term(), term())} and1539 not (%{..., oneOf: empty_list() or non_empty_list(term(), term())} or1540 %{..., nullable: true} or1541 %{..., anyOf: empty_list() or non_empty_list(term(), term())} or1542 %{..., nullable: false})1543 } and1544 not %OpenApiSpex.Cast{1545 schema: %OpenApiSpex.Reference{} or %{..., "x-validate": not nil} or nil1546 }) or1547 (%OpenApiSpex.Cast{1548 value: nil,1549 schema:1550 %{1551 ...,1552 allOf: non_empty_list(term(), term()),1553 anyOf: empty_list() or non_empty_list(term(), term())1554 } and1555 not (%{..., oneOf: empty_list() or non_empty_list(term(), term())} or1556 %{..., nullable: true} or %{..., nullable: false})1557 } and1558 not %OpenApiSpex.Cast{1559 schema: %OpenApiSpex.Reference{} or %{..., "x-validate": not nil} or nil1560 }) or1561 (%OpenApiSpex.Cast{1562 value: nil,1563 schema:1564 %{1565 ...,1566 allOf: non_empty_list(term(), term()),1567 oneOf: empty_list() or non_empty_list(term(), term())1568 } and not (%{..., nullable: true} or %{..., nullable: false})1569 } and1570 not %OpenApiSpex.Cast{1571 schema: %OpenApiSpex.Reference{} or %{..., "x-validate": not nil} or nil1572 }) or1573 (%{..., errors: term(), schema: %{..., allOf: non_empty_list(term(), term())}} and1574 not (%OpenApiSpex.Cast{value: nil} or %OpenApiSpex.Cast{schema: %{..., type: :integer}} or1575 %OpenApiSpex.Cast{1576 schema: %{1577 ...,1578 anyOf: empty_list() or non_empty_list(term(), term()),1579 type: term()1580 }1581 } or %OpenApiSpex.Cast{schema: %{..., enum: empty_list()}} or1582 %OpenApiSpex.Cast{schema: %{..., type: :array}} or1583 %OpenApiSpex.Cast{1584 value: nil,1585 schema: %{..., anyOf: empty_list() or non_empty_list(term(), term())}1586 } or %OpenApiSpex.Cast{schema: %{..., type: :boolean}} or1587 %OpenApiSpex.Cast{schema: %{..., type: :string}} or1588 %OpenApiSpex.Cast{schema: %{..., type: term()}} or1589 %OpenApiSpex.Cast{1590 schema: %OpenApiSpex.Reference{} or %{..., "x-validate": not nil} or nil1591 } or %OpenApiSpex.Cast{value: nil, schema: %{..., nullable: true}} or1592 %OpenApiSpex.Cast{1593 value: nil,1594 schema: %{..., allOf: empty_list() or non_empty_list(term(), term())}1595 } or %OpenApiSpex.Cast{schema: %{..., type: :object}} or1596 %OpenApiSpex.Cast{schema: %{..., discriminator: map(), type: :object}} or1597 %OpenApiSpex.Cast{1598 schema: %{..., enum: empty_list() or non_empty_list(term(), term())}1599 } or1600 %OpenApiSpex.Cast{1601 schema: %{1602 ...,1603 allOf: empty_list() or non_empty_list(term(), term()),1604 type: term()1605 }1606 } or %OpenApiSpex.Cast{schema: %{..., type: nil}} or1607 %OpenApiSpex.Cast{1608 value: nil,1609 schema: %{..., oneOf: empty_list() or non_empty_list(term(), term())}1610 } or %OpenApiSpex.Cast{value: nil, schema: %{..., nullable: false}} or1611 %OpenApiSpex.Cast{1612 schema: %{1613 ...,1614 oneOf: empty_list() or non_empty_list(term(), term()),1615 type: term()1616 }1617 } or %OpenApiSpex.Cast{schema: %{..., type: :number}}))1618 )16191620 where "ctx" was given the types:16211622 # type: dynamic(%{..., schema: %{..., allOf: non_empty_list(term(), term())}})1623 # from: lib/open_api_spex/cast/all_of.ex:9:741624 %{schema: %{allOf: [%OpenApiSpex.Schema{} = schema | remaining]}} = ctx16251626 # type: dynamic(%{..., errors: term(), schema: %{..., allOf: non_empty_list(term(), term())}})1627 # from: lib/open_api_spex/cast/all_of.ex:13:151628 OpenApiSpex.Cast.cast(%{ctx | errors: [], schema: relaxed_schema})16291630 # type: dynamic(1631 %OpenApiSpex.Cast{1632 schema: %{..., allOf: non_empty_list(term(), term()), "x-validate": atom() and not nil}1633 } or1634 (%OpenApiSpex.Cast{1635 schema:1636 %{1637 ...,1638 allOf: non_empty_list(term(), term()),1639 anyOf: empty_list() or non_empty_list(term(), term()),1640 type: term()1641 } and1642 not (%{..., "x-validate": not nil} or %{..., discriminator: map(), type: :object} or1643 %{..., enum: empty_list() or non_empty_list(term(), term())})1644 } and1645 not (%OpenApiSpex.Cast{value: nil, schema: %{..., nullable: false}} or1646 %OpenApiSpex.Cast{1647 value: nil,1648 schema: %{..., oneOf: empty_list() or non_empty_list(term(), term())}1649 } or1650 %OpenApiSpex.Cast{1651 value: nil,1652 schema: %{..., allOf: empty_list() or non_empty_list(term(), term())}1653 } or %OpenApiSpex.Cast{value: nil, schema: %{..., nullable: true}} or1654 %OpenApiSpex.Cast{1655 value: nil,1656 schema: %{..., anyOf: empty_list() or non_empty_list(term(), term())}1657 } or %OpenApiSpex.Cast{value: nil})) or1658 (%OpenApiSpex.Cast{1659 schema:1660 %{..., allOf: non_empty_list(term(), term()), discriminator: map(), type: :object} and1661 not (%{..., "x-validate": not nil} or1662 %{..., enum: empty_list() or non_empty_list(term(), term())})1663 } and1664 not (%OpenApiSpex.Cast{value: nil, schema: %{..., nullable: false}} or1665 %OpenApiSpex.Cast{1666 value: nil,1667 schema: %{..., oneOf: empty_list() or non_empty_list(term(), term())}1668 } or1669 %OpenApiSpex.Cast{1670 value: nil,1671 schema: %{..., allOf: empty_list() or non_empty_list(term(), term())}1672 } or %OpenApiSpex.Cast{value: nil, schema: %{..., nullable: true}} or1673 %OpenApiSpex.Cast{1674 value: nil,1675 schema: %{..., anyOf: empty_list() or non_empty_list(term(), term())}1676 } or %OpenApiSpex.Cast{value: nil})) or1677 (%OpenApiSpex.Cast{1678 schema:1679 %{..., allOf: non_empty_list(term(), term()), enum: empty_list()} and1680 not %{..., "x-validate": not nil}1681 } and1682 not (%OpenApiSpex.Cast{value: nil, schema: %{..., nullable: false}} or1683 %OpenApiSpex.Cast{1684 value: nil,1685 schema: %{..., oneOf: empty_list() or non_empty_list(term(), term())}1686 } or1687 %OpenApiSpex.Cast{1688 value: nil,1689 schema: %{..., allOf: empty_list() or non_empty_list(term(), term())}1690 } or %OpenApiSpex.Cast{value: nil, schema: %{..., nullable: true}} or1691 %OpenApiSpex.Cast{1692 value: nil,1693 schema: %{..., anyOf: empty_list() or non_empty_list(term(), term())}1694 } or %OpenApiSpex.Cast{value: nil})) or1695 (%OpenApiSpex.Cast{1696 schema:1697 %{..., allOf: non_empty_list(term(), term()), enum: non_empty_list(term(), term())} and1698 not %{..., "x-validate": not nil}1699 } and1700 not (%OpenApiSpex.Cast{value: nil, schema: %{..., nullable: false}} or1701 %OpenApiSpex.Cast{1702 value: nil,1703 schema: %{..., oneOf: empty_list() or non_empty_list(term(), term())}1704 } or1705 %OpenApiSpex.Cast{1706 value: nil,1707 schema: %{..., allOf: empty_list() or non_empty_list(term(), term())}1708 } or %OpenApiSpex.Cast{value: nil, schema: %{..., nullable: true}} or1709 %OpenApiSpex.Cast{1710 value: nil,1711 schema: %{..., anyOf: empty_list() or non_empty_list(term(), term())}1712 } or %OpenApiSpex.Cast{value: nil})) or1713 (%OpenApiSpex.Cast{1714 schema:1715 %{..., allOf: non_empty_list(term(), term()), type: term()} and1716 not (%{..., "x-validate": not nil} or %{..., discriminator: map(), type: :object} or1717 %{..., anyOf: empty_list() or non_empty_list(term(), term()), type: term()} or1718 %{..., enum: empty_list() or non_empty_list(term(), term())})1719 } and1720 not (%OpenApiSpex.Cast{value: nil} or1721 %OpenApiSpex.Cast{value: nil, schema: %{..., nullable: true}} or1722 %OpenApiSpex.Cast{1723 value: nil,1724 schema: %{..., allOf: empty_list() or non_empty_list(term(), term())}1725 } or1726 %OpenApiSpex.Cast{1727 value: nil,1728 schema: %{..., oneOf: empty_list() or non_empty_list(term(), term())}1729 } or %OpenApiSpex.Cast{value: nil, schema: %{..., nullable: false}})) or1730 (%OpenApiSpex.Cast{1731 value: nil,1732 schema: %{..., allOf: non_empty_list(term(), term()), nullable: false}1733 } and1734 not %OpenApiSpex.Cast{1735 schema: %OpenApiSpex.Reference{} or %{..., "x-validate": not nil} or nil1736 }) or1737 (%OpenApiSpex.Cast{1738 value: nil,1739 schema:1740 %{..., allOf: non_empty_list(term(), term())} and1741 not (%{..., oneOf: empty_list() or non_empty_list(term(), term())} or1742 %{..., nullable: true} or1743 %{..., anyOf: empty_list() or non_empty_list(term(), term())} or1744 %{..., nullable: false})1745 } and1746 not %OpenApiSpex.Cast{1747 schema: %OpenApiSpex.Reference{} or %{..., "x-validate": not nil} or nil1748 }) or1749 (%OpenApiSpex.Cast{1750 value: nil,1751 schema:1752 %{1753 ...,1754 allOf: non_empty_list(term(), term()),1755 anyOf: empty_list() or non_empty_list(term(), term())1756 } and1757 not (%{..., oneOf: empty_list() or non_empty_list(term(), term())} or1758 %{..., nullable: true} or %{..., nullable: false})1759 } and1760 not %OpenApiSpex.Cast{1761 schema: %OpenApiSpex.Reference{} or %{..., "x-validate": not nil} or nil1762 }) or1763 (%OpenApiSpex.Cast{1764 value: nil,1765 schema:1766 %{1767 ...,1768 allOf: non_empty_list(term(), term()),1769 oneOf: empty_list() or non_empty_list(term(), term())1770 } and not (%{..., nullable: true} or %{..., nullable: false})1771 } and1772 not %OpenApiSpex.Cast{1773 schema: %OpenApiSpex.Reference{} or %{..., "x-validate": not nil} or nil1774 }) or1775 (%{..., errors: term(), schema: %{..., allOf: non_empty_list(term(), term())}} and1776 not (%OpenApiSpex.Cast{value: nil} or %OpenApiSpex.Cast{schema: %{..., type: :integer}} or1777 %OpenApiSpex.Cast{1778 schema: %{1779 ...,1780 anyOf: empty_list() or non_empty_list(term(), term()),1781 type: term()1782 }1783 } or %OpenApiSpex.Cast{schema: %{..., enum: empty_list()}} or1784 %OpenApiSpex.Cast{schema: %{..., type: :array}} or1785 %OpenApiSpex.Cast{1786 value: nil,1787 schema: %{..., anyOf: empty_list() or non_empty_list(term(), term())}1788 } or %OpenApiSpex.Cast{schema: %{..., type: :boolean}} or1789 %OpenApiSpex.Cast{schema: %{..., type: :string}} or1790 %OpenApiSpex.Cast{schema: %{..., type: term()}} or1791 %OpenApiSpex.Cast{1792 schema: %OpenApiSpex.Reference{} or %{..., "x-validate": not nil} or nil1793 } or %OpenApiSpex.Cast{value: nil, schema: %{..., nullable: true}} or1794 %OpenApiSpex.Cast{1795 value: nil,1796 schema: %{..., allOf: empty_list() or non_empty_list(term(), term())}1797 } or %OpenApiSpex.Cast{schema: %{..., type: :object}} or1798 %OpenApiSpex.Cast{schema: %{..., discriminator: map(), type: :object}} or1799 %OpenApiSpex.Cast{1800 schema: %{..., enum: empty_list() or non_empty_list(term(), term())}1801 } or1802 %OpenApiSpex.Cast{1803 schema: %{1804 ...,1805 allOf: empty_list() or non_empty_list(term(), term()),1806 type: term()1807 }1808 } or %OpenApiSpex.Cast{schema: %{..., type: nil}} or1809 %OpenApiSpex.Cast{1810 value: nil,1811 schema: %{..., oneOf: empty_list() or non_empty_list(term(), term())}1812 } or %OpenApiSpex.Cast{value: nil, schema: %{..., nullable: false}} or1813 %OpenApiSpex.Cast{1814 schema: %{1815 ...,1816 oneOf: empty_list() or non_empty_list(term(), term()),1817 type: term()1818 }1819 } or %OpenApiSpex.Cast{schema: %{..., type: :number}}))1820 )1821 # from: lib/open_api_spex/cast/all_of.ex:13:151822 OpenApiSpex.Cast.cast(%{ctx | errors: [], schema: relaxed_schema})18231824 when defining the variable "ctx", you must also pattern match on "%OpenApiSpex.Cast{}"18251826 type warning found at:1827 │1828 26 │ %Cast{ctx | errors: ctx.errors ++ errors},1829 │ ~1830 │1831 └─ lib/open_api_spex/cast/all_of.ex:26:11: OpenApiSpex.Cast.AllOf.cast_all_of/218321833 warning: the following clause is redundant:18341835 def cast(schema = %OpenApiSpex.Schema{type: :object, allOf: []}, value = %{}, schemas)18361837 it has type:18381839 dynamic(%OpenApiSpex.Schema{type: :object, allOf: empty_list()}), dynamic(map()), dynamic()18401841 previous clauses have already matched on the following types:18421843 %OpenApiSpex.Schema{type: :boolean}, boolean(), term()1844 %OpenApiSpex.Schema{type: :boolean}, binary(), term()1845 %OpenApiSpex.Schema{type: :integer}, integer(), term()1846 %OpenApiSpex.Schema{type: :integer}, binary(), term()1847 %OpenApiSpex.Schema{type: :number}, float(), term()1848 %OpenApiSpex.Schema{type: :number}, integer(), term()1849 %OpenApiSpex.Schema{type: :number}, binary(), term()1850 %OpenApiSpex.Schema{type: :string, format: :"date-time"}, binary(), term()1851 %OpenApiSpex.Schema{type: :string, format: :date}, binary(), term()1852 %OpenApiSpex.Schema{type: :string, format: :binary}, %Plug.Upload{}, term()1853 %OpenApiSpex.Schema{type: :string}, binary(), term()1854 %OpenApiSpex.Schema{type: :array, items: nil}, empty_list() or non_empty_list(term(), term()), term()1855 %OpenApiSpex.Schema{type: :array}, empty_list(), term()1856 %OpenApiSpex.Schema{type: :array}, non_empty_list(term(), term()), term()1857 %OpenApiSpex.Schema{type: :array}, not empty_list() and not non_empty_list(term(), term()), term()1858 %OpenApiSpex.Schema{type: :object, discriminator: map()}, map(), term()1859 %OpenApiSpex.Schema{type: :object, allOf: empty_list() or non_empty_list(term(), term())}, map(), term()18601861 │1862 107 │ def cast(schema = %Schema{type: :object, allOf: []}, value = %{}, schemas) do1863 │ ~1864 │1865 └─ lib/open_api_spex/deprecated_cast.ex:107:7: OpenApiSpex.DeprecatedCast.cast/318661867 warning: the following clause is redundant:18681869 def cast(%OpenApiSpex.Schema{oneOf: []}, _value, _schemas)18701871 it has type:18721873 %OpenApiSpex.Schema{oneOf: empty_list()}, dynamic(), dynamic()18741875 previous clauses have already matched on the following types:18761877 %OpenApiSpex.Schema{type: :boolean}, boolean(), term()1878 %OpenApiSpex.Schema{type: :boolean}, binary(), term()1879 %OpenApiSpex.Schema{type: :integer}, integer(), term()1880 %OpenApiSpex.Schema{type: :integer}, binary(), term()1881 %OpenApiSpex.Schema{type: :number}, float(), term()1882 %OpenApiSpex.Schema{type: :number}, integer(), term()1883 %OpenApiSpex.Schema{type: :number}, binary(), term()1884 %OpenApiSpex.Schema{type: :string, format: :"date-time"}, binary(), term()1885 %OpenApiSpex.Schema{type: :string, format: :date}, binary(), term()1886 %OpenApiSpex.Schema{type: :string, format: :binary}, %Plug.Upload{}, term()1887 %OpenApiSpex.Schema{type: :string}, binary(), term()1888 %OpenApiSpex.Schema{type: :array, items: nil}, empty_list() or non_empty_list(term(), term()), term()1889 %OpenApiSpex.Schema{type: :array}, empty_list(), term()1890 %OpenApiSpex.Schema{type: :array}, non_empty_list(term(), term()), term()1891 %OpenApiSpex.Schema{type: :array}, not empty_list() and not non_empty_list(term(), term()), term()1892 %OpenApiSpex.Schema{type: :object, discriminator: map()}, map(), term()1893 %OpenApiSpex.Schema{type: :object, allOf: empty_list() or non_empty_list(term(), term())}, map(), term()1894 %OpenApiSpex.Schema{oneOf: empty_list() or non_empty_list(term(), term())}, term(), term()18951896 │1897 115 │ def cast(%Schema{oneOf: []}, _value, _schemas) do1898 │ ~1899 │1900 └─ lib/open_api_spex/deprecated_cast.ex:115:7: OpenApiSpex.DeprecatedCast.cast/319011902 warning: this clause of defp term_type/1 is never used (or it will always fail/warn when invoked)1903 │1904 325 │ defp term_type(v) when is_nil(v), do: nil1905 │ ~1906 │1907 └─ lib/open_api_spex/deprecated_cast.ex:325:8: OpenApiSpex.DeprecatedCast.term_type/119081909 warning: this clause of defp validate_required_properties/3 is never used (or it will always fail/warn when invoked)1910 │1911 466 │ defp validate_required_properties(%Schema{type: :object, required: nil}, _val, _path), do: :ok1912 │ ~1913 │1914 └─ lib/open_api_spex/deprecated_cast.ex:466:8: OpenApiSpex.DeprecatedCast.validate_required_properties/319151916 warning: a struct for OpenApiSpex.Cast is expected on struct update:19171918 %OpenApiSpex.Cast{ctx | errors: ctx.errors ++ errors}19191920 but got type:19211922 dynamic(%{..., schemas: term()})19231924 where "ctx" was given the type:19251926 # type: dynamic(%{..., schemas: term()})1927 # from: lib/open_api_spex/cast/one_of.ex:14:301928 OpenApiSpex.resolve_schema(schema, ctx.schemas)19291930 when defining the variable "ctx", you must also pattern match on "%OpenApiSpex.Cast{}"19311932 type warning found at:1933 │1934 22 │ {%Cast{ctx | errors: ctx.errors ++ errors}, results, [schema | error_schemas]}1935 │ ~1936 │1937 └─ lib/open_api_spex/cast/one_of.ex:22:14: OpenApiSpex.Cast.OneOf.cast/119381939 warning: a struct for OpenApiSpex.Cast is expected on struct update:19401941 %OpenApiSpex.Cast{new_ctx | errors: new_ctx.errors ++ errors}19421943 but got type:19441945 dynamic(%{..., schema: %{..., anyOf: term()}})19461947 where "new_ctx" was given the type:19481949 # type: dynamic(%{..., schema: %{..., anyOf: term()}})1950 # from: lib/open_api_spex/cast/any_of.ex:20:131951 new_ctx = Map.update!(ctx, :schema, fn x -> Map.update!(x, :anyOf, fn _ -> remaining end) end)19521953 when defining the variable "new_ctx", you must also pattern match on "%OpenApiSpex.Cast{}"19541955 type warning found at:1956 │1957 35 │ %Cast{new_ctx | errors: new_ctx.errors ++ errors},1958 │ ~1959 │1960 └─ lib/open_api_spex/cast/any_of.ex:35:11: OpenApiSpex.Cast.AnyOf.cast_any_of/319611962 warning: the right-hand side of || will never be executed:19631964 description || ...19651966 because the left-hand side always evaluates to:19671968 dynamic(not false and not nil)19691970 where "description" was given the type:19711972 # type: dynamic(not false and not nil)1973 # from: lib/open_api_spex/controller.ex1974 {:ok, {mod_meta, summary, description, meta}}19751976 type warning found at:1977 │1978 184 │ description: description || "",1979 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1980 │1981 └─ lib/open_api_spex/controller.ex:184: OpenApiSpex.Controller.__api_operation__/219821983 warning: the right-hand side of || will always execute:19841985 OpenApiSpex.OpenApi.yaml_encoder()19861987 because the left-hand side always evaluates to:19881989 dynamic(nil)19901991 where "x" (context Kernel) was given the type:19921993 # type: dynamic(nil)1994 # from: lib/mix/tasks/openapi.spec.yaml.ex:541995 x19961997 type warning found at:1998 │1999 54 │ OpenApiSpex.OpenApi.yaml_encoder() ||2000 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2001 │2002 └─ lib/mix/tasks/openapi.spec.yaml.ex:54: Mix.Tasks.Openapi.Spec.Yaml.encoder/020032004Generated open_api_spex app2005==> phoenix_html_helpers2006Compiling 6 files (.ex)2007 warning: comparison between distinct types found:20082009 id == nil20102011 given types:20122013 dynamic(not false and not nil and not binary()) == nil20142015 where "id" was given the types:20162017 # type: dynamic(not false and not nil)2018 # from: lib/phoenix_html_helpers/form_data.ex:5:82019 id = Keyword.get(opts, :id) || name20202021 # type: dynamic(not false and not nil and not binary())2022 # from: lib/phoenix_html_helpers/form_data.ex:7:122023 is_binary(id)20242025 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 false20262027 type warning found at:2028 │2029 7 │ unless is_binary(id) or is_nil(id) do2030 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2031 │2032 └─ lib/phoenix_html_helpers/form_data.ex:7: Phoenix.HTML.FormData.Atom.to_form/220332034 warning: incompatible types given to form_for/3:20352036 form_for(form_data, action, [])20372038 given types:20392040 dynamic(), dynamic(), -empty_list()-20412042 but expected one of:20432044 term(), term(), (none() -> term())20452046 where "action" was given the type:20472048 # type: dynamic()2049 # from: lib/phoenix_html_helpers/form.ex:36:272050 action20512052 where "form_data" was given the type:20532054 # type: dynamic()2055 # from: lib/phoenix_html_helpers/form.ex:36:162056 form_data20572058 type warning found at:2059 │2060 37 │ form_for(form_data, action, [])2061 │ ~2062 │2063 └─ lib/phoenix_html_helpers/form.ex:37:5: PhoenixHTMLHelpers.Form.form_for/220642065Generated phoenix_html_helpers app2066==> prometheus_plugs2067Compiling 3 files (.ex)2068 warning: unused require Logger2069 │2070 53 │ require Logger2071 │ ~2072 │2073 └─ lib/prometheus/plug_exporter.ex:53:320742075 warning: unused require Logger2076 │2077 91 │ require Logger2078 │ ~2079 │2080 └─ lib/prometheus/plug_instrumenter.ex:91:320812082 warning: unused require Logger2083 │2084 91 │ require Logger2085 │ ~2086 │2087 └─ lib/prometheus/plug_pipeline_instrumenter.ex:91:320882089 warning: Plug.Router.Utils.split/1 is undefined (module Plug.Router.Utils is not available or is yet to be defined)2090 │2091 73 │ path = Plug.Router.Utils.split(Config.path(module_name))2092 │ ~2093 │2094 └─ lib/prometheus/plug_exporter.ex:73:30: Prometheus.PlugExporter.__using__/120952096 warning: Plug.Builder.compile/3 is undefined (module Plug.Builder is not available or is yet to be defined)2097 │2098 227 │ {conn, body} = Plug.Builder.compile(env, plugs, [])2099 │ ~2100 │2101 └─ lib/prometheus/plug_instrumenter.ex:227:33: Prometheus.PlugInstrumenter.__before_compile__/121022103Generated prometheus_plugs app2104warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"2105 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/22106 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/12107 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/52108 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/22109 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/42110 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/221112112==> postgrex2113Compiling 70 files (.ex)2114Generated postgrex app2115==> ecto_sql2116Compiling 25 files (.ex)2117Generated ecto_sql app2118==> ecto_enum2119Compiling 5 files (.ex)2120Generated ecto_enum app2121==> nerves_compatibility_test2122===> Analyzing applications...2123===> Compiling parse_trans2124==> uboot_env2125Compiling 5 files (.ex)2126Generated uboot_env app2127==> property_table2128Compiling 8 files (.ex)2129Generated property_table app2130==> nerves_uevent2131 CC uevent.o2132 LD uevent2133Compiling 5 files (.ex)2134Generated nerves_uevent app2135==> nerves_runtime2136Compiling 14 files (.ex)2137Generated nerves_runtime app2138==> toolshed2139Compiling 5 files (.ex)2140Generated toolshed app2141==> websock2142Compiling 1 file (.ex)2143Generated websock app2144==> websock_adapter2145Compiling 4 files (.ex)2146Generated websock_adapter app2147warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"2148 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/22149 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/12150 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/52151 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/22152 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/42153 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/221542155==> phoenix2156Compiling 71 files (.ex)2157 warning: unused require Logger2158 │2159 9 │ require Logger2160 │ ~2161 │2162 └─ lib/phoenix/config.ex:9:321632164 warning: unused require Logger2165 │2166 281 │ require Logger2167 │ ~2168 │2169 └─ lib/phoenix/endpoint.ex:281:321702171 warning: unused require Phoenix.Endpoint2172 │2173 6 │ require Phoenix.Endpoint2174 │ ~2175 │2176 └─ lib/phoenix/controller.ex:6:321772178 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 operator2179 │2180 46 │ <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix2181 │ ~2182 │2183 └─ lib/phoenix/naming.ex:46:29: Phoenix.Naming.unsuffix/221842185 warning: unused require Phoenix.Endpoint2186 │2187 17 │ require Phoenix.Endpoint2188 │ ~2189 │2190 └─ lib/phoenix/endpoint/render_errors.ex:17:321912192 warning: unused require Logger2193 │2194 70 │ require Logger2195 │ ~2196 │2197 └─ lib/phoenix/socket/pool_supervisor.ex:70:321982199 warning: unused require Phoenix.Endpoint2200 │2201 6 │ require Phoenix.Endpoint2202 │ ~2203 │2204 └─ lib/phoenix/channel/server.ex:6:322052206 warning: unused require Phoenix.Endpoint2207 │2208 202 │ require Phoenix.Endpoint2209 │ ~2210 │2211 └─ lib/phoenix/socket.ex:202:322122213 warning: unused require Logger2214 │2215 100 │ require Logger2216 │ ~2217 │2218 └─ lib/phoenix/token.ex:100:322192220 warning: comparison between distinct types found:22212222 merge_all != []22232224 given types:22252226 dynamic(non_empty_list({atom(), term()})) != empty_list()22272228 where "merge_all" was given the type:22292230 # type: dynamic(non_empty_list({atom(), term()}))2231 # from: lib/phoenix/router/route.ex:121:152232 merge_all = merge_params ++ merge_private ++ merge_assigns22332234 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 false22352236 type warning found at:2237 │2238 123 │ if merge_all != [] do2239 │ ~2240 │2241 └─ lib/phoenix/router/route.ex:123:18: Phoenix.Router.Route.build_prepare/122422243 warning: a struct for Plug.Conn is expected on struct update:22442245 %Plug.Conn{conn | state: :sent}22462247 but got type:22482249 dynamic()22502251 where "conn" was given the type:22522253 # type: dynamic()2254 # from: lib/phoenix/endpoint/render_errors.ex:55:172255 conn22562257 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"22582259 type warning found at:2260 │2261 60 │ %Plug.Conn{conn | state: :sent}2262 │ ~2263 │2264 └─ lib/phoenix/endpoint/render_errors.ex:60:11: Phoenix.Endpoint.RenderErrors.__catch__/522652266 warning: a struct for Plug.Conn is expected on struct update:22672268 %Plug.Conn{conn | query_params: %{}, params: %{}}22692270 but got type:22712272 dynamic(%{..., params: %Plug.Conn.Unfetched{}})22732274 where "conn" was given the types:22752276 # type: dynamic(%{..., params: term()})2277 # from: lib/phoenix/endpoint/render_errors.ex:133:172278 conn.params22792280 # type: dynamic(%{..., params: %Plug.Conn.Unfetched{}})2281 # from: lib/phoenix/endpoint/render_errors.ex:133:172282 conn.params22832284 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"22852286 type warning found at:2287 │2288 134 │ %Plug.Conn.Unfetched{} -> %Plug.Conn{conn | query_params: %{}, params: %{}}2289 │ ~2290 │2291 └─ lib/phoenix/endpoint/render_errors.ex:134:35: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/122922293 warning: a struct for Plug.Conn is expected on struct update:22942295 %Plug.Conn{conn | query_params: %{}, params: params}22962297 but got type:22982299 dynamic(%{..., params: not %Plug.Conn.Unfetched{}})23002301 where "conn" was given the types:23022303 # type: dynamic(%{..., params: term()})2304 # from: lib/phoenix/endpoint/render_errors.ex:133:172305 conn.params23062307 # type: dynamic(%{..., params: not %Plug.Conn.Unfetched{}})2308 # from: lib/phoenix/endpoint/render_errors.ex:133:172309 conn.params23102311 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"23122313 type warning found at:2314 │2315 135 │ params -> %Plug.Conn{conn | query_params: %{}, params: params}2316 │ ~2317 │2318 └─ lib/phoenix/endpoint/render_errors.ex:135:19: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/123192320 warning: a struct for Plug.Conn is expected on struct update:23212322 %Plug.Conn{conn | params: params}23232324 but got type:23252326 dynamic(%{..., params: map()})23272328 where "conn" was given the type:23292330 # type: dynamic(%{..., params: map()})2331 # from: lib/phoenix/controller.ex:1327:172332 Map.get(conn.params, required_key)23332334 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"23352336 type warning found at:2337 │2338 1334 │ %Plug.Conn{conn | params: params}2339 │ ~2340 │2341 └─ lib/phoenix/controller.ex:1334:5: Phoenix.Controller.scrub_params/223422343Generated phoenix app2344==> nerves_compatibility_test2345===> Analyzing applications...2346===> Compiling quic2347===> Analyzing applications...2348===> Compiling webtransport2349===> Analyzing applications...2350===> Compiling hackney2351==> httpoison2352Compiling 3 files (.ex)2353Generated httpoison app2354==> step_flow2355Compiling 183 files (.ex)2356 warning: unused require Logger2357 │2358 5 │ require Logger2359 │ ~2360 │2361 └─ lib/step_flow/amqp/common_emitter.ex:5:323622363 warning: unused require Logger2364 │2365 11 │ require Logger2366 │ ~2367 │2368 └─ lib/step_flow/application.ex:11:323692370 warning: unused require Logger2371 │2372 6 │ require Logger2373 │ ~2374 │2375 └─ lib/step_flow/controllers/statistics/durations.ex:6:323762377 warning: unused require Logger2378 │2379 5 │ require Logger2380 │ ~2381 │2382 └─ lib/step_flow/controllers/step/launch_params.ex:5:323832384 warning: unused require Logger2385 │2386 7 │ require Logger2387 │ ~2388 │2389 └─ lib/step_flow/metrics/live_workflow_processing_collector.ex:7:323902391 warning: unused require Logger2392 │2393 7 │ require Logger2394 │ ~2395 │2396 └─ lib/step_flow/metrics/pending_job_collector.ex:7:323972398 warning: unused require Logger2399 │2400 8 │ require Logger2401 │ ~2402 │2403 └─ lib/step_flow/metrics/workflow_collector.ex:8:324042405 warning: unused require Logger2406 │2407 6 │ require Logger2408 │ ~2409 │2410 └─ lib/step_flow/models/rights/right.ex:6:324112412 warning: unused require Logger2413 │2414 5 │ require Logger2415 │ ~2416 │2417 └─ lib/step_flow/models/roles/role.ex:5:324182419 warning: unused require Logger2420 │2421 6 │ require Logger2422 │ ~2423 │2424 └─ lib/step_flow/models/roles/roles.ex:6:324252426 warning: unused require Logger2427 │2428 8 │ require Logger2429 │ ~2430 │2431 └─ lib/step_flow/models/workflow_definitions/workflow_definition.ex:8:324322433 warning: unused require Logger2434 │2435 4 │ require Logger2436 │ ~2437 │2438 └─ lib/step_flow/plugs/prometheus.ex:4:324392440 warning: unused require Logger2441 │2442 4 │ require Logger2443 │ ~2444 │2445 └─ lib/step_flow/plugs/step_flow.ex:4:324462447 warning: unused require Logger2448 │2449 4 │ require Logger2450 │ ~2451 │2452 └─ lib/step_flow/view/workflow_view.ex:4:324532454 warning: the following clause is redundant:24552456 def create_worker_status!(%StepFlow.Progressions.Progression{} = message)24572458 it has type:24592460 dynamic(%StepFlow.Progressions.Progression{})24612462 previous clauses have already matched on the following types:24632464 map()24652466 │2467 181 │ def create_worker_status!(%StepFlow.Progressions.Progression{} = message) do2468 │ ~2469 │2470 └─ lib/step_flow/models/workers/worker_statuses.ex:181:7: StepFlow.Workers.WorkerStatuses.create_worker_status!/124712472Generated step_flow app2473==> nerves_compatibility_test2474Compiling 2 files (.ex)2475Generated nerves_compatibility_test app2476* skipping runtime configuration (config/runtime.exs not found)2477** (Mix) Duplicated modules: 2478 'Elixir.JSON.Encoder.Map' specified in elixir and json2479 'Elixir.JSON.Encoder.List' specified in elixir and json2480 'Elixir.JSON.Encoder.Integer' specified in elixir and json2481 'Elixir.JSON.Encoder.Float' specified in elixir and json2482 'Elixir.JSON.Encoder.BitString' specified in elixir and json2483 'Elixir.JSON.Encoder.Atom' specified in elixir and json2484 'Elixir.JSON.Encoder' specified in elixir and json2485 'Elixir.JSON' specified in elixir and json