Build log
nerves_system_rpi4
jido_tools 0.1.1 · fail · run jido_tools-0.1.1-1790962525099
2280 of 2280 lines
1Resolving Hex dependencies...2Resolution completed in 0.97s3Unchanged:4 abacus 2.1.05 backoff 1.1.66 certifi 2.15.07 circular_buffer 1.1.08 crontab 1.2.09 decimal 3.1.110 deep_merge 1.0.211 dotenvy 1.1.112 ecto 3.14.213 elixir_make 0.10.014 ex_dbug 2.1.015 expo 1.1.116 finch 0.22.017 gen_stage 1.3.218 gettext 0.26.219 hackney 1.25.0 VULNERABLE!20 EEF-CVE-2026-47071 (HIGH)21 aka: CVE-2026-47071, GHSA-gp9c-pm5m-5cxr22 SOCKS5 TLS upgrade ignores caller timeout in hackney23 https://osv.dev/vulnerability/EEF-CVE-2026-470712425 EEF-CVE-2026-47076 (MEDIUM)26 aka: CVE-2026-47076, GHSA-pj7v-xfvx-wmjq27 SSRF allowlist bypass via percent-encoded host in hackney28 https://osv.dev/vulnerability/EEF-CVE-2026-470762930 EEF-CVE-2026-47069 (LOW)31 aka: CVE-2026-47069, GHSA-mp55-p8c9-rfw232 CRLF injection in cookie domain/path options in hackney33 https://osv.dev/vulnerability/EEF-CVE-2026-470693435 EEF-CVE-2026-47075 (MEDIUM)36 aka: CVE-2026-47075, GHSA-j9wq-vxxc-94wf37 CR/LF injection in query parameter in hackney38 https://osv.dev/vulnerability/EEF-CVE-2026-4707539 hpax 1.1.040 httpoison 2.3.041 idna 6.1.142 instructor 0.1.043 interactive_cmd 0.1.444 jason 1.4.545 jaxon 2.0.846 jido 1.1.0-rc.247 jido_ai 0.5.248 jido_tools 0.1.1 RETIRED!49 (deprecated) This package has been deprecated. Use 'jido_action' instead as a drop-in replacement50 langchain 0.3.351 metrics 1.0.152 mime 2.0.753 mimerl 1.5.054 mint 1.11.055 multipart 0.6.156 nerves 2.0.0-pre.257 nerves_discovery 0.1.558 nerves_logging 0.2.459 nerves_runtime 0.13.1360 nerves_system_bbb 2.30.261 nerves_system_br 1.34.462 nerves_system_mangopi_mq_pro 0.17.263 nerves_system_qemu_aarch64 0.4.264 nerves_system_rpi0 2.1.265 nerves_system_rpi4 2.1.266 nerves_system_rpi5 2.1.267 nerves_system_trellis 0.5.068 nerves_system_x86_64 1.34.269 nerves_toolchain_aarch64_nerves_linux_gnu 15.3.170 nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.171 nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.172 nerves_toolchain_riscv64_nerves_linux_gnu 15.3.173 nerves_toolchain_x86_64_nerves_linux_musl 15.3.174 nerves_uevent 0.1.775 nimble_options 1.1.176 nimble_parsec 1.4.277 nimble_pool 1.1.078 ok 2.3.079 openai_ex 0.9.2280 parse_trans 3.4.181 phoenix_pubsub 2.3.082 plug 1.20.383 plug_crypto 2.2.084 private 0.1.285 proper_case 1.3.186 property_table 0.3.487 quantum 3.5.388 req 0.5.18 VULNERABLE!89 EEF-CVE-2026-49755 (HIGH)90 aka: CVE-2026-49755, GHSA-655f-mp8p-96gv91 Decompression bomb DoS in Req via auto-decoded archive and compressed response bodies92 https://osv.dev/vulnerability/EEF-CVE-2026-497559394 EEF-CVE-2026-49756 (LOW)95 aka: CVE-2026-49756, GHSA-px9f-whj3-246m96 Multipart form-data header injection in Req via unescaped name/filename/content_type97 https://osv.dev/vulnerability/EEF-CVE-2026-4975698 ring_logger 0.11.799 solid 0.18.0100 ssl_verify_fun 1.1.7101 tablet 0.3.3102 telemetry 1.4.2103 telemetry_metrics 1.2.0104 telemetry_registry 0.3.2105 tentacat 2.5.0106 toolshed 0.5.0107 typed_struct 0.3.0108 typed_struct_nimble_options 0.1.1109 tz 0.28.4110 uboot_env 1.0.2111 unicode_util_compat 0.7.1112 uniq 0.6.3113 weather 0.4.0114* Getting jido_tools (Hex package)115* Getting nerves (Hex package)116* Getting ring_logger (Hex package)117* Getting toolshed (Hex package)118* Getting nerves_runtime (Hex package)119* Getting nerves_system_bbb (Hex package)120* Getting nerves_system_mangopi_mq_pro (Hex package)121* Getting nerves_system_qemu_aarch64 (Hex package)122* Getting nerves_system_rpi0 (Hex package)123* Getting nerves_system_rpi4 (Hex package)124* Getting nerves_system_rpi5 (Hex package)125* Getting nerves_system_trellis (Hex package)126* Getting nerves_system_x86_64 (Hex package)127* Getting nerves_system_br (Hex package)128* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)129* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)130* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)131* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)132* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)133* Getting nerves_logging (Hex package)134* Getting nerves_uevent (Hex package)135* Getting uboot_env (Hex package)136* Getting elixir_make (Hex package)137* Getting property_table (Hex package)138* Getting circular_buffer (Hex package)139* Getting interactive_cmd (Hex package)140* Getting nerves_discovery (Hex package)141* Getting tablet (Hex package)142* Getting jido (Hex package)143* Getting jido_ai (Hex package)144* Getting req (Hex package)145* Getting tentacat (Hex package)146* Getting weather (Hex package)147* Getting plug (Hex package)148* Getting tz (Hex package)149* Getting mime (Hex package)150* Getting plug_crypto (Hex package)151* Getting telemetry (Hex package)152* Getting httpoison (Hex package)153* Getting jason (Hex package)154* Getting hackney (Hex package)155* Getting certifi (Hex package)156* Getting idna (Hex package)157* Getting metrics (Hex package)158* Getting mimerl (Hex package)159* Getting parse_trans (Hex package)160* Getting ssl_verify_fun (Hex package)161* Getting unicode_util_compat (Hex package)162* Getting finch (Hex package)163* Getting mint (Hex package)164* Getting nimble_options (Hex package)165* Getting nimble_pool (Hex package)166* Getting hpax (Hex package)167* Getting dotenvy (Hex package)168* Getting instructor (Hex package)169* Getting langchain (Hex package)170* Getting openai_ex (Hex package)171* Getting solid (Hex package)172* Getting typed_struct (Hex package)173* Getting nimble_parsec (Hex package)174* Getting multipart (Hex package)175* Getting ecto (Hex package)176* Getting gettext (Hex package)177* Getting expo (Hex package)178* Getting decimal (Hex package)179* Getting jaxon (Hex package)180* Getting abacus (Hex package)181* Getting backoff (Hex package)182* Getting deep_merge (Hex package)183* Getting ex_dbug (Hex package)184* Getting ok (Hex package)185* Getting phoenix_pubsub (Hex package)186* Getting private (Hex package)187* Getting proper_case (Hex package)188* Getting quantum (Hex package)189* Getting telemetry_metrics (Hex package)190* Getting typed_struct_nimble_options (Hex package)191* Getting uniq (Hex package)192* Getting crontab (Hex package)193* Getting gen_stage (Hex package)194* Getting telemetry_registry (Hex package)195Found retired packages, see above for details196Found packages with security advisories, see above for details197You have added/upgraded packages you could sponsor, run `mix hex.sponsor` to learn more198==> nerves_system_br199Generated nerves_system_br app200==> typed_struct201Compiling 2 files (.ex)202Generated typed_struct app203==> gen_stage204Compiling 10 files (.ex)205 warning: unused require Logger206 │207 103 │ require Logger208 │ ~209 │210 └─ lib/gen_stage/dispatchers/partition_dispatcher.ex:103:3211212Generated gen_stage app213==> mime214Compiling 1 file (.ex)215Generated mime app216==> circular_buffer217Compiling 1 file (.ex)218Generated circular_buffer app219==> nimble_options220Compiling 3 files (.ex)221Generated nimble_options app222==> multipart223Compiling 2 files (.ex)224Generated multipart app225==> plug_crypto226Compiling 5 files (.ex)227Generated plug_crypto app228==> hpax229Compiling 4 files (.ex)230Generated hpax app231==> mint232Compiling 1 file (.erl)233Compiling 21 files (.ex)234Generated mint app235==> nerves_compatibility_test236===> Analyzing applications...237===> Compiling mimerl238==> ssl_verify_fun239Compiling 7 files (.erl)240Generated ssl_verify_fun app241==> abacus242Compiling 3 files (.erl)243Compiling 5 files (.ex)244 warning: the following clause is redundant:245246 def typeof(b) when is_boolean(b)247248 it has type:249250 dynamic(boolean())251252 previous clauses have already matched on the following types:253254 atom()255 binary()256 integer()257 float()258259 │260 31 │ def typeof(b) when is_boolean(b), do: :boolean261 │ ~262 │263 └─ lib/runtime/helpers.ex:31:7: Abacus.Runtime.Helpers.typeof/1264265 warning: Abacus.parse/1 is undefined or private266 │267 36 │ Abacus.parse(without_parantheses),268 │ ~269 │270 └─ lib/format.ex:36:14: Abacus.Format.format/1271 └─ lib/format.ex:37:14: Abacus.Format.format/1272 └─ lib/format.ex:38:14: Abacus.Format.format/1273 └─ lib/format.ex:39:14: Abacus.Format.format/1274 └─ lib/format.ex:64:14: Abacus.Format.format/1275 └─ lib/format.ex:65:14: Abacus.Format.format/1276 └─ lib/format.ex:81:14: Abacus.Format.format/1277 └─ lib/format.ex:82:14: Abacus.Format.format/1278 └─ lib/format.ex:100:28: Abacus.Format.format/1279280Generated abacus app281==> tablet282Compiling 2 files (.ex)283Generated tablet app284==> private285Compiling 1 file (.ex)286Generated private app287==> elixir_make288Compiling 8 files (.ex)289Generated elixir_make app290==> nerves_logging291 CC kmsg_tailer.o292 LD kmsg_tailer293Compiling 5 files (.ex)294Generated nerves_logging app295==> proper_case296Compiling 4 files (.ex)297 warning: redefining @doc attribute previously set at line 89.298299 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:300301 @doc """302 new docs303 """304 def snake_case(...)305306 │307 102 │ @doc """308 │ ~~~~~~~~309 │310 └─ lib/proper_case.ex:102: ProperCase.snake_case/1311312 warning: Jason.encode_to_iodata!/1 is undefined (module Jason 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)313 │314 2 │ use ProperCase.JSONEncoder, transform: &ProperCase.to_camel_case/1315 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~316 │317 └─ lib/json_encoder/camel_case.ex:2: ProperCase.JSONEncoder.CamelCase.encode_to_iodata!/1318319Generated proper_case app320==> nerves_discovery321Compiling 5 files (.ex)322Generated nerves_discovery app323==> ring_logger324Compiling 7 files (.ex)325Generated ring_logger app326==> deep_merge327Compiling 2 files (.ex)328Generated deep_merge app329==> decimal330Compiling 4 files (.ex)331Generated decimal app332==> jason333Compiling 10 files (.ex)334Generated jason app335==> interactive_cmd336Compiling 1 file (.ex)337Generated interactive_cmd app338==> nerves339Compiling 65 files (.ex)340 warning: redefining module Mix.Tasks.Nerves.Init (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Mix.Tasks.Nerves.Init.beam)341 │342 6 │ defmodule Mix.Tasks.Nerves.Init do343 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~344 │345 └─ lib/mix/tasks/nerves.init.ex:6: Mix.Tasks.Nerves.Init (module)346347 warning: redefining module Nerves (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.beam)348 │349 6 │ defmodule Nerves do350 │ ~~~~~~~~~~~~~~~~~~~351 │352 └─ lib/nerves.ex:6: Nerves (module)353354 warning: redefining module Nerves.ArtifactResolver (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.ArtifactResolver.beam)355 │356 5 │ defmodule Nerves.ArtifactResolver do357 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~358 │359 └─ lib/nerves/artifact_resolver.ex:5: Nerves.ArtifactResolver (module)360361 warning: redefining module Nerves.BuildAction.AppModes (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.AppModes.beam)362 │363 6 │ defmodule Nerves.BuildAction.AppModes do364 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~365 │366 └─ lib/nerves/build_action/app_modes.ex:6: Nerves.BuildAction.AppModes (module)367368 warning: redefining module Nerves.BuildAction.CheckExecutables (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.CheckExecutables.beam)369 │370 5 │ defmodule Nerves.BuildAction.CheckExecutables do371 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~372 │373 └─ lib/nerves/build_action/check_executables.ex:5: Nerves.BuildAction.CheckExecutables (module)374375 warning: redefining module Nerves.BuildAction.Erlinit (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.Erlinit.beam)376 │377 8 │ defmodule Nerves.BuildAction.Erlinit do378 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~379 │380 └─ lib/nerves/build_action/erlinit.ex:8: Nerves.BuildAction.Erlinit (module)381382 warning: redefining module Nerves.BuildAction.Firmware (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.Firmware.beam)383 │384 5 │ defmodule Nerves.BuildAction.Firmware do385 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~386 │387 └─ lib/nerves/build_action/firmware.ex:5: Nerves.BuildAction.Firmware (module)388389 warning: redefining module Nerves.BuildAction.IExStartupCheck (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.IExStartupCheck.beam)390 │391 7 │ defmodule Nerves.BuildAction.IExStartupCheck do392 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~393 │394 └─ lib/nerves/build_action/iex_startup_check.ex:7: Nerves.BuildAction.IExStartupCheck (module)395396 warning: redefining module Nerves.BuildAction.NervesV1System (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1System.beam)397 │398 5 │ defmodule Nerves.BuildAction.NervesV1System do399 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~400 │401 └─ lib/nerves/build_action/nerves_v1_system.ex:5: Nerves.BuildAction.NervesV1System (module)402403 warning: redefining module Nerves.BuildAction.NervesV1Toolchain (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1Toolchain.beam)404 │405 5 │ defmodule Nerves.BuildAction.NervesV1Toolchain do406 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~407 │408 └─ lib/nerves/build_action/nerves_v1_toolchain.ex:5: Nerves.BuildAction.NervesV1Toolchain (module)409410 warning: redefining module Nerves.BuildAction.Rootfs (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.Rootfs.beam)411 │412 5 │ defmodule Nerves.BuildAction.Rootfs do413 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~414 │415 └─ lib/nerves/build_action/rootfs.ex:5: Nerves.BuildAction.Rootfs (module)416417 warning: redefining module Nerves.BuildAction.SortApps (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.SortApps.beam)418 │419 6 │ defmodule Nerves.BuildAction.SortApps do420 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~421 │422 └─ lib/nerves/build_action/sort_apps.ex:6: Nerves.BuildAction.SortApps (module)423424 warning: redefining module Nerves.BuildAction.StripAll (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.StripAll.beam)425 │426 5 │ defmodule Nerves.BuildAction.StripAll do427 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~428 │429 └─ lib/nerves/build_action/strip_all.ex:5: Nerves.BuildAction.StripAll (module)430431 warning: redefining module Nerves.BuildAction.Trimmer (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.Trimmer.beam)432 │433 5 │ defmodule Nerves.BuildAction.Trimmer do434 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~435 │436 └─ lib/nerves/build_action/trimmer.ex:5: Nerves.BuildAction.Trimmer (module)437438 warning: redefining module Nerves.BuildPlan (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildPlan.beam)439 │440 5 │ defmodule Nerves.BuildPlan do441 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~442 │443 └─ lib/nerves/build_plan.ex:5: Nerves.BuildPlan (module)444445 warning: redefining module Nerves.BuildPlan.Checks (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildPlan.Checks.beam)446 │447 5 │ defmodule Nerves.BuildPlan.Checks do448 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~449 │450 └─ lib/nerves/build_plan/checks.ex:5: Nerves.BuildPlan.Checks (module)451452 warning: redefining module Nerves.Container (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.Container.beam)453 │454 6 │ defmodule Nerves.Container do455 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~456 │457 └─ lib/nerves/container.ex:6: Nerves.Container (module)458459 warning: redefining module Nerves.Fingerprint (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.Fingerprint.beam)460 │461 5 │ defmodule Nerves.Fingerprint do462 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~463 │464 └─ lib/nerves/fingerprint.ex:5: Nerves.Fingerprint (module)465466 warning: redefining module Nerves.MixPackage (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.MixPackage.beam)467 │468 5 │ defmodule Nerves.MixPackage do469 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~470 │471 └─ lib/nerves/mix_package.ex:5: Nerves.MixPackage (module)472473 warning: redefining module Nerves.Paths (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.Paths.beam)474 │475 5 │ defmodule Nerves.Paths do476 │ ~~~~~~~~~~~~~~~~~~~~~~~~~477 │478 └─ lib/nerves/paths.ex:5: Nerves.Paths (module)479480 warning: redefining module Nerves.TargetTuple (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.TargetTuple.beam)481 │482 5 │ defmodule Nerves.TargetTuple do483 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~484 │485 └─ lib/nerves/target_tuple.ex:5: Nerves.TargetTuple (module)486487Generated nerves app488==> nerves_toolchain_aarch64_nerves_linux_gnu489Compiling 1 file (.ex)490Generated nerves_toolchain_aarch64_nerves_linux_gnu app491==> nerves_system_rpi4492Generated nerves_system_rpi4 app493==> nimble_parsec494Compiling 4 files (.ex)495Generated nimble_parsec app496==> solid497Compiling 32 files (.ex)498 warning: unused require Solid499 │500 19 │ require Solid501 │ ~502 │503 └─ lib/solid/sigil.ex:19:3504505Compiling lib/solid/parser.ex (it's taking more than 10s)506Generated solid app507==> nerves_compatibility_test508===> Analyzing applications...509===> Compiling unicode_util_compat510===> Analyzing applications...511===> Compiling idna512===> Analyzing applications...513===> Compiling telemetry514==> ecto515Compiling 56 files (.ex)516Generated ecto app517==> uniq518Compiling 5 files (.ex)519 warning: the variable "clock_hi_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator520 │521 547 │ <<clock_hi::bits(clock_hi_size), clock_lo::bits(8), node::bits(48)>> <-522 │ ~523 │524 └─ lib/uuid.ex:547:29: Uniq.UUID.parse_raw/5525526 warning: the variable "clock_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator527 │528 549 │ <<clock::uint(clock_size)>> <-529 │ ~530 │531 └─ lib/uuid.ex:549:26: Uniq.UUID.parse_raw/5532533 warning: the variable "clock_hi_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator534 │535 547 │ <<clock_hi::bits(clock_hi_size), clock_lo::bits(8), node::bits(48)>> <-536 │ ~537 │538 └─ lib/uuid.ex:547:29: Uniq.UUID.parse_raw/5539540 warning: the variable "clock_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator541 │542 549 │ <<clock::uint(clock_size)>> <-543 │ ~544 │545 └─ lib/uuid.ex:549:26: Uniq.UUID.parse_raw/5546547 warning: the variable "clock_hi_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator548 │549 547 │ <<clock_hi::bits(clock_hi_size), clock_lo::bits(8), node::bits(48)>> <-550 │ ~551 │552 └─ lib/uuid.ex:547:29: Uniq.UUID.parse_raw/5553554 warning: the variable "clock_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator555 │556 549 │ <<clock::uint(clock_size)>> <-557 │ ~558 │559 └─ lib/uuid.ex:549:26: Uniq.UUID.parse_raw/5560561 warning: the variable "clock_hi_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator562 │563 547 │ <<clock_hi::bits(clock_hi_size), clock_lo::bits(8), node::bits(48)>> <-564 │ ~565 │566 └─ lib/uuid.ex:547:29: Uniq.UUID.parse_raw/5567568 warning: the variable "clock_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator569 │570 549 │ <<clock::uint(clock_size)>> <-571 │ ~572 │573 └─ lib/uuid.ex:549:26: Uniq.UUID.parse_raw/5574575Generated uniq app576==> crontab577Compiling 7 files (.ex)578 warning: this clause of defp get_interval_value/2 is never used (or it will always fail/warn when invoked)579 │580 255 │ defp get_interval_value(:ambiguity_opts, %{ambiguity_opts: ambiguity_opts}), do: ambiguity_opts581 │ ~582 │583 └─ lib/crontab/date_checker.ex:255:8: Crontab.DateChecker.get_interval_value/2584585Generated crontab app586==> telemetry_metrics587Compiling 7 files (.ex)588Generated telemetry_metrics app589==> telemetry_registry590Compiling 1 file (.erl)591Compiling 1 file (.ex)592Generated telemetry_registry app593==> ok594Compiling 3 files (.ex)595Generated ok app596==> jaxon597mkdir -p priv598gcc -shared -fpic -D_POSIX_C_SOURCE=199309L -std=c99 -O3 -I/usr/local/lib/erlang/erts-17.1/include c_src/decoder*.c -o priv/decoder.so599Compiling 11 files (.ex)600 warning: Application.get_env/3 is discouraged in the module body, use Application.compile_env/3 instead601 │602 2 │ @parser Application.get_env(:jaxon, :parser, Jaxon.Parsers.NifParser)603 │ ~604 │605 └─ lib/jaxon/parser.ex:2:23: Jaxon.Parser (module)606607Generated jaxon app608==> expo609Compiling 2 files (.erl)610Compiling 22 files (.ex)611Generated expo app612==> gettext613Compiling 18 files (.ex)614 warning: unused require Gettext.Macros615 │616 594 │ require Gettext.Macros617 │ ~618 │619 └─ lib/gettext.ex:594:3620621 warning: Kernel.ParallelCompiler.async/1 is deprecated. Use `pmap/2` instead622 │623 426 │ Kernel.ParallelCompiler.async(fn ->624 │ ~625 │626 └─ lib/gettext/compiler.ex:426:39: Gettext.Compiler.compile_po_files/3627628 warning: the following clause is redundant:629630 defp ensure_empty_msgstr!(%Expo.Message.Plural{} = message)631632 it has type:633634 dynamic(%Expo.Message.Plural{})635636 previous clauses have already matched on the following types:637638 %Expo.Message.Singular{}639 %Expo.Message.Plural{}640641 │642 391 │ defp ensure_empty_msgstr!(%Message.Plural{} = message) do643 │ ~644 │645 └─ lib/gettext/extractor.ex:391:8: Gettext.Extractor.ensure_empty_msgstr!/1646647Generated gettext app648==> phoenix_pubsub649Compiling 12 files (.ex)650Generated phoenix_pubsub app651==> nerves_compatibility_test652===> Analyzing applications...653===> Compiling backoff654===> Analyzing applications...655===> Compiling certifi656==> plug657Compiling 1 file (.erl)658Compiling 42 files (.ex)659Generated plug app660==> dotenvy661Compiling 3 files (.ex)662 warning: unused require Logger663 │664 20 │ require Logger665 │ ~666 │667 └─ lib/dotenvy.ex:20:3668669Generated dotenvy app670==> tz671Compiling 16 files (.ex)672Compiling lib/tz/compiler_runner.ex (it's taking more than 10s)673Generated tz app674==> nerves_compatibility_test675===> Analyzing applications...676===> Compiling parse_trans677==> uboot_env678Compiling 5 files (.ex)679Generated uboot_env app680==> nimble_pool681Compiling 2 files (.ex)682Generated nimble_pool app683==> finch684Compiling 22 files (.ex)685Generated finch app686warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"687 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2688 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1689 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5690 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2691 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4692 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2693694==> req695Compiling 19 files (.ex)696Generated req app697==> weather698Compiling 20 files (.ex)699 warning: a struct for Weather.Opts is expected on struct update:700701 %Weather.Opts{weather_opts | appid: "<<REDACTED>>"}702703 but got type:704705 dynamic(not %Weather.Opts{appid: nil})706707 where "weather_opts" was given the type:708709 # type: dynamic(not %Weather.Opts{appid: nil})710 # from: lib/weather/opts.ex:376:21711 weather_opts712713 when defining the variable "weather_opts", you must also pattern match on "%Weather.Opts{}"714715 type warning found at:716 │717 376 │ defp redact_appid(weather_opts), do: %Weather.Opts{weather_opts | appid: "<<REDACTED>>"}718 │ ~719 │720 └─ lib/weather/opts.ex:376:40: Inspect.Weather.Opts.redact_appid/1721722 warning: a struct for Weather.Opts is expected on struct update:723724 %Weather.Opts{opts | test: val}725726 but got type:727728 dynamic()729730 where "opts" was given the type:731732 # type: dynamic()733 # from: lib/weather/opts.ex:154:34734 opts735736 when defining the variable "opts", you must also pattern match on "%Weather.Opts{}"737738 type warning found at:739 │740 157 │ {:ok, %__MODULE__{opts | test: val}}741 │ ~742 │743 └─ lib/weather/opts.ex:157:15: Weather.Opts.add/3744745 warning: a struct for Weather.Opts is expected on struct update:746747 %Weather.Opts{opts | appid: "MyFakeApiKeyz9c141l98bi16m1g9f21"}748749 but got type:750751 dynamic(%{..., test: not nil})752753 where "opts" was given the type:754755 # type: dynamic(%{..., test: not nil})756 # from: lib/weather/opts.ex:165:37757 %{test: test} = opts758759 when defining the variable "opts", you must also pattern match on "%Weather.Opts{}"760761 type warning found at:762 │763 166 │ do: {:ok, %__MODULE__{opts | appid: @fake_api_key}}764 │ ~765 │766 └─ lib/weather/opts.ex:166:15: Weather.Opts.add/3767768 warning: a struct for Weather.Opts is expected on struct update:769770 %Weather.Opts{opts | appid: api_key}771772 but got type:773774 dynamic(not %{..., test: not nil})775776 where "opts" was given the type:777778 # type: dynamic(not %{..., test: not nil})779 # from: lib/weather/opts.ex:168:26780 opts781782 when defining the variable "opts", you must also pattern match on "%Weather.Opts{}"783784 type warning found at:785 │786 175 │ {:ok, %__MODULE__{opts | appid: api_key}}787 │ ~788 │789 └─ lib/weather/opts.ex:175:15: Weather.Opts.add/3790791 warning: a struct for Weather.Opts is expected on struct update:792793 %Weather.Opts{opts | latitude: 42.3871, longitude: -87.9562, label: nil}794795 but got type:796797 dynamic(%{..., test: not nil})798799 where "opts" was given the type:800801 # type: dynamic(%{..., test: not nil})802 # from: lib/weather/opts.ex:179:40803 %{test: test} = opts804805 when defining the variable "opts", you must also pattern match on "%Weather.Opts{}"806807 type warning found at:808 │809 182 │ %__MODULE__{opts | latitude: @fake_latitude, longitude: @fake_longitude, label: nil}810 │ ~811 │812 └─ lib/weather/opts.ex:182:7: Weather.Opts.add/3813814 warning: a struct for Weather.Opts is expected on struct update:815816 %Weather.Opts{opts | label: label}817818 but got type:819820 dynamic()821822 where "opts" was given the type:823824 # type: dynamic()825 # from: lib/weather/opts.ex:195:37826 opts827828 when defining the variable "opts", you must also pattern match on "%Weather.Opts{}"829830 type warning found at:831 │832 196 │ {:ok, %__MODULE__{opts | label: label}}833 │ ~834 │835 └─ lib/weather/opts.ex:196:11: Weather.Opts.add/3836837 warning: a struct for Weather.Opts is expected on struct update:838839 %Weather.Opts{opts | hours: val}840841 but got type:842843 dynamic()844845 where "opts" was given the type:846847 # type: dynamic()848 # from: lib/weather/opts.ex:211:37849 opts850851 when defining the variable "opts", you must also pattern match on "%Weather.Opts{}"852853 type warning found at:854 │855 214 │ {:ok, %__MODULE__{opts | hours: val}}856 │ ~857 │858 └─ lib/weather/opts.ex:214:15: Weather.Opts.add/3859860 warning: a struct for Weather.Opts is expected on struct update:861862 %Weather.Opts{opts | every_n_hours: val}863864 but got type:865866 dynamic(%{..., hours: term()})867868 where "opts" was given the type:869870 # type: dynamic(%{..., hours: term()})871 # from: lib/weather/opts.ex:224872 val <= opts.hours873874 when defining the variable "opts", you must also pattern match on "%Weather.Opts{}"875876 type warning found at:877 │878 225 │ {:ok, %__MODULE__{opts | every_n_hours: val}}879 │ ~880 │881 └─ lib/weather/opts.ex:225:15: Weather.Opts.add/3882883 warning: a struct for Weather.Opts is expected on struct update:884885 %Weather.Opts{opts | color_codes: color_codes}886887 but got type:888889 dynamic()890891 where "opts" was given the type:892893 # type: dynamic()894 # from: lib/weather/opts.ex:235:53895 opts896897 when defining the variable "opts", you must also pattern match on "%Weather.Opts{}"898899 type warning found at:900 │901 248 │ {:ok, %__MODULE__{opts | color_codes: color_codes}}902 │ ~903 │904 └─ lib/weather/opts.ex:248:11: Weather.Opts.add/3905906 warning: a struct for Weather.Opts is expected on struct update:907908 %Weather.Opts{opts | color_codes: color_codes}909910 but got type:911912 dynamic()913914 where "opts" was given the type:915916 # type: dynamic()917 # from: lib/weather/opts.ex:251:49918 opts919920 when defining the variable "opts", you must also pattern match on "%Weather.Opts{}"921922 type warning found at:923 │924 253 │ {:ok, %__MODULE__{opts | color_codes: color_codes}}925 │ ~926 │927 └─ lib/weather/opts.ex:253:11: Weather.Opts.add/3928929 warning: a struct for Weather.Opts is expected on struct update:930931 %Weather.Opts{opts | units: units}932933 but got type:934935 dynamic()936937 where "opts" was given the type:938939 # type: dynamic()940 # from: lib/weather/opts.ex:266:37941 opts942943 when defining the variable "opts", you must also pattern match on "%Weather.Opts{}"944945 type warning found at:946 │947 269 │ {:ok, %__MODULE__{opts | units: units}}948 │ ~949 │950 └─ lib/weather/opts.ex:269:15: Weather.Opts.add/3951952 warning: a struct for Weather.Opts is expected on struct update:953954 %Weather.Opts{opts | latitude: latitude, longitude: longitude, label: nil}955956 but got type:957958 dynamic()959960 where "opts" was given the type:961962 # type: dynamic()963 # from: lib/weather/opts.ex:296:29964 opts965966 when defining the variable "opts", you must also pattern match on "%Weather.Opts{}"967968 type warning found at:969 │970 301 │ %__MODULE__{opts | latitude: latitude, longitude: longitude, label: nil}971 │ ~972 │973 └─ lib/weather/opts.ex:301:9: Weather.Opts.parse_lat_long/2974975 warning: a struct for Weather.Opts is expected on struct update:976977 %Weather.Opts{opts | latitude: latitude, longitude: longitude, label: label_from_zip}978979 but got type:980981 dynamic(%{..., appid: term()})982983 where "opts" was given the type:984985 # type: dynamic(%{..., appid: term()})986 # from: lib/weather/opts.ex:339:22987 Weather.API.fetch_location(%{zip: zip}, opts.appid)988989 when defining the variable "opts", you must also pattern match on "%Weather.Opts{}"990991 type warning found at:992 │993 345 │ %__MODULE__{opts | latitude: latitude, longitude: longitude, label: label_from_zip}994 │ ~995 │996 └─ lib/weather/opts.ex:345:11: Weather.Opts.lookup_by_zip/2997998Generated weather app999==> instructor1000Compiling 17 files (.ex)1001 warning: this clause cannot match because a previous clause at line 196 matches the same pattern as this clause1002 │1003 197 │ %{"content" => chunk} -> chunk1004 │ ~1005 │1006 └─ lib/instructor/adapters/openai.ex:197:2910071008 warning: the following clause is redundant:10091010 %{"content" => chunk} ->10111012 previous clauses have already matched on the following types:10131014 nil1015 map()10161017 where "chunk" was given the type:10181019 # type: dynamic()1020 # from: lib/instructor/adapters/openai.ex:197:71021 %{"content" => chunk}10221023 type warning found at:1024 │1025 197 │ %{"content" => chunk} -> chunk1026 │ ~1027 │1028 └─ lib/instructor/adapters/openai.ex:197:29: Instructor.Adapters.OpenAI.parse_stream_chunk_for_mode/210291030 warning: the following clause will never match:10311032 {:error, reason} ->10331034 it is expected to match on type:10351036 dynamic({:validation, term()} and not {:validation, %Ecto.Changeset{valid?: true}})10371038 type warning found at:1039 │1040 307 │ {:error, reason} -> acc ++ [{:error, reason}]1041 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1042 │1043 └─ lib/instructor.ex:307: Instructor.do_streaming_partial_array_chat_completion/310441045 warning: the following clause is redundant:10461047 e ->10481049 previous clauses have already matched on the following types:10501051 {:validation, not %Ecto.Changeset{valid?: true}}10521053 where "e" was given the type:10541055 # type: dynamic({:validation, term()} and not {:validation, %Ecto.Changeset{valid?: true}})1056 # from: lib/instructor.ex:308:171057 e10581059 type warning found at:1060 │1061 308 │ e -> acc ++ [{:error, e}]1062 │ ~1063 │1064 └─ lib/instructor.ex:308:19: Instructor.do_streaming_partial_array_chat_completion/310651066 warning: the following clause will never match:10671068 {:error, reason} ->10691070 it is expected to match on type:10711072 dynamic({:validation, term()} and not {:validation, %Ecto.Changeset{valid?: true}})10731074 type warning found at:1075 │1076 378 │ {:error, reason} -> {:error, reason}1077 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1078 │1079 └─ lib/instructor.ex:378: Instructor.do_streaming_partial_chat_completion/310801081 warning: the following clause is redundant:10821083 e ->10841085 previous clauses have already matched on the following types:10861087 {:validation, not %Ecto.Changeset{valid?: true}}10881089 where "e" was given the type:10901091 # type: dynamic({:validation, term()} and not {:validation, %Ecto.Changeset{valid?: true}})1092 # from: lib/instructor.ex:379:111093 e10941095 type warning found at:1096 │1097 379 │ e -> {:error, e}1098 │ ~1099 │1100 └─ lib/instructor.ex:379:13: Instructor.do_streaming_partial_chat_completion/311011102 warning: the following clause will never match:11031104 {:error, reason} ->11051106 it is expected to match on type:11071108 dynamic({:validation, term()} and not {:validation, %Ecto.Changeset{valid?: true}})11091110 type warning found at:1111 │1112 414 │ {:error, reason} -> {:error, reason}1113 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1114 │1115 └─ lib/instructor.ex:414: Instructor.do_streaming_array_chat_completion/311161117 warning: the following clause is redundant:11181119 e ->11201121 previous clauses have already matched on the following types:11221123 {:validation, not %Ecto.Changeset{valid?: true}}11241125 where "e" was given the type:11261127 # type: dynamic({:validation, term()} and not {:validation, %Ecto.Changeset{valid?: true}})1128 # from: lib/instructor.ex:415:91129 e11301131 type warning found at:1132 │1133 415 │ e -> {:error, e}1134 │ ~1135 │1136 └─ lib/instructor.ex:415:11: Instructor.do_streaming_array_chat_completion/311371138Generated instructor app1139==> langchain1140Compiling 49 files (.ex)1141 warning: unused require Logger1142 │1143 2 │ require Logger1144 │ ~1145 │1146 └─ lib/chat_models/chat_model.ex:2:311471148 warning: unused require Logger1149 │1150 74 │ require Logger1151 │ ~1152 │1153 └─ lib/function_param.ex:74:311541155 warning: unused require Logger1156 │1157 19 │ require Logger1158 │ ~1159 │1160 └─ lib/images/generated_image.ex:19:311611162 warning: unused require Logger1163 │1164 51 │ require Logger1165 │ ~1166 │1167 └─ lib/message/content_part.ex:51:311681169 warning: unused require Logger1170 │1171 17 │ require Logger1172 │ ~1173 │1174 └─ lib/message/tool_call.ex:17:311751176 warning: unused require Logger1177 │1178 21 │ require Logger1179 │ ~1180 │1181 └─ lib/message/tool_result.ex:21:311821183 warning: unused require Logger1184 │1185 25 │ require Logger1186 │ ~1187 │1188 └─ lib/message_delta.ex:25:311891190 warning: unused require Logger1191 │1192 58 │ require Logger1193 │ ~1194 │1195 └─ lib/routing/prompt_route.ex:58:311961197 warning: unused require Logger1198 │1199 23 │ require Logger1200 │ ~1201 │1202 └─ lib/token_usage.ex:23:312031204 warning: a struct for LangChain.Chains.LLMChain is expected on struct update:12051206 %LangChain.Chains.LLMChain{chain | llm: llm}12071208 but got type:12091210 dynamic()12111212 where "chain" was given the type:12131214 # type: dynamic()1215 # from: lib/chains/llm_chain.ex:493:271216 chain12171218 when defining the variable "chain", you must also pattern match on "%LangChain.Chains.LLMChain{}"12191220 type warning found at:1221 │1222 494 │ use_chain = %LLMChain{chain | llm: llm}1223 │ ~1224 │1225 └─ lib/chains/llm_chain.ex:494:17: LangChain.Chains.LLMChain.try_chain_with_llm/412261227 warning: a struct for LangChain.MessageDelta is expected on struct update:12281229 %LangChain.MessageDelta{delta | status: :complete}12301231 but got type:12321233 dynamic(not nil)12341235 where "delta" was given the type:12361237 # type: dynamic(not nil)1238 # from: lib/chains/llm_chain.ex:1184:441239 %LangChain.Chains.LLMChain{delta: delta} = chain12401241 when defining the variable "delta", you must also pattern match on "%LangChain.MessageDelta{}"12421243 type warning found at:1244 │1245 1188 │ case MessageDelta.to_message(%MessageDelta{delta | status: :complete}) do1246 │ ~1247 │1248 └─ lib/chains/llm_chain.ex:1188:34: LangChain.Chains.LLMChain.cancel_delta/212491250 warning: the following conditional expression:12511252 chain.verbose12531254 will always evaluate to:12551256 dynamic(true)12571258 where "chain" was given the type:12591260 # type: dynamic(%LangChain.Chains.LLMChain{verbose: true})1261 # from: lib/chains/llm_chain.ex:459:531262 %LangChain.Chains.LLMChain{verbose: true} = chain12631264 type warning found at:1265 │1266 461 │ if chain.verbose, do: IO.inspect(chain.llm, label: "LLM")1267 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1268 │1269 └─ lib/chains/llm_chain.ex:461: LangChain.Chains.LLMChain.initial_run_logging/112701271 warning: the following clause is redundant:12721273 {:ok, []} ->12741275 previous clauses have already matched on the following types:12761277 {:ok, binary()}1278 {:ok, empty_list() or non_empty_list(term(), term())}12791280 type warning found at:1281 │1282 214 │ {:ok, []} ->1283 │ ~1284 │1285 └─ lib/message.ex:214:17: LangChain.Message.validate_content_type/112861287 warning: the following clause is redundant:12881289 def for_api(%LangChain.Message{content: content} = message) when is_list(content)12901291 it has type:12921293 dynamic(%LangChain.Message{content: empty_list() or non_empty_list(term(), term())})12941295 previous clauses have already matched on the following types:12961297 %LangChain.Message{role: :assistant}1298 %LangChain.Message{role: :tool}1299 %LangChain.Message{content: binary()}1300 %LangChain.Message{content: empty_list() or non_empty_list(term(), term())}13011302 │1303 284 │ def for_api(%Message{content: content} = message) when is_list(content) do1304 │ ~1305 │1306 └─ lib/chat_models/chat_google_ai.ex:284:7: LangChain.ChatModels.ChatGoogleAI.for_api/113071308 warning: Nx.Serving.batched_run/2 is undefined (module Nx.Serving is not available or is yet to be defined)1309 │1310 283 │ |> Nx.Serving.batched_run(%{text: prompt, seed: model.seed})1311 │ ~1312 │1313 └─ lib/chat_models/chat_bumblebee.ex:283:19: LangChain.ChatModels.ChatBumblebee.do_serving_request/31314 └─ lib/chat_models/chat_bumblebee.ex:296:19: LangChain.ChatModels.ChatBumblebee.do_serving_request/31315 └─ lib/chat_models/chat_bumblebee.ex:309:19: LangChain.ChatModels.ChatBumblebee.do_serving_request/31316 └─ lib/chat_models/chat_bumblebee.ex:317:19: LangChain.ChatModels.ChatBumblebee.do_serving_request/313171318 warning: comparison between distinct types found:13191320 type == :object13211322 given types:13231324 dynamic(not :object) == :object13251326 where "type" was given the type:13271328 # type: dynamic(not :object)1329 # from: lib/function_param.ex:184:121330 type == :object13311332 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 false13331334 type warning found at:1335 │1336 192 │ !Enum.empty?(props) and (!(type == :array and item == "object") and !(type == :object)) ->1337 │ ~1338 │1339 └─ lib/function_param.ex:192:82: LangChain.FunctionParam.validate_object_type/113401341Generated langchain app1342==> openai_ex1343Compiling 40 files (.ex)1344Generated openai_ex app1345==> quantum1346Compiling 39 files (.ex)1347Generated quantum app1348==> nerves_compatibility_test1349===> Analyzing applications...1350===> Compiling metrics1351===> Analyzing applications...1352===> Compiling hackney1353 ┌─ src/hackney_manager.erl:1354 │1355 114 │ catch ets:delete(?MODULE, Ref),1356 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1357Compile directive 'nowarn_deprecated_catch' can be used to suppress1358warnings in selected modules.13591360 ┌─ src/hackney_manager.erl:1361 │1362 125 │ catch Transport:close(Socket);1363 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1364Compile directive 'nowarn_deprecated_catch' can be used to suppress1365warnings in selected modules.13661367 ┌─ src/hackney_manager.erl:1368 │1369 129 │ catch Handler:checkin(SocketRef, Socket)1370 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1371Compile directive 'nowarn_deprecated_catch' can be used to suppress1372warnings in selected modules.13731374 ┌─ src/hackney_manager.erl:1375 │1376 133 │ catch Transport:controlling_process(Socket, self()),1377 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1378Compile directive 'nowarn_deprecated_catch' can be used to suppress1379warnings in selected modules.13801381 ┌─ src/hackney_manager.erl:1382 │1383 134 │ catch Transport:close(Socket),1384 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1385Compile directive 'nowarn_deprecated_catch' can be used to suppress1386warnings in selected modules.13871388 ┌─ src/hackney_manager.erl:1389 │1390 227 │ catch ets:delete(?MODULE, Ref),1391 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1392Compile directive 'nowarn_deprecated_catch' can be used to suppress1393warnings in selected modules.13941395 ┌─ src/hackney_manager.erl:1396 │1397 255 │ catch ets:delete(?MODULE, Ref),1398 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1399Compile directive 'nowarn_deprecated_catch' can be used to suppress1400warnings in selected modules.14011402 ┌─ src/hackney_manager.erl:1403 │1404 269 │ catch Transport:controlling_process(Socket, self()),1405 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1406Compile directive 'nowarn_deprecated_catch' can be used to suppress1407warnings in selected modules.14081409 ┌─ src/hackney_manager.erl:1410 │1411 270 │ catch Transport:close(Socket),1412 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1413Compile directive 'nowarn_deprecated_catch' can be used to suppress1414warnings in selected modules.14151416 ┌─ src/hackney_manager.erl:1417 │1418 383 │ catch unlink(Stream),1419 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1420Compile directive 'nowarn_deprecated_catch' can be used to suppress1421warnings in selected modules.14221423 ┌─ src/hackney_manager.erl:1424 │1425 416 │ catch ets:delete(?REFS, Ref),1426 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1427Compile directive 'nowarn_deprecated_catch' can be used to suppress1428warnings in selected modules.14291430 ┌─ src/hackney_manager.erl:1431 │1432 426 │ catch ets:delete(?REFS, Ref),1433 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1434Compile directive 'nowarn_deprecated_catch' can be used to suppress1435warnings in selected modules.14361437 ┌─ src/hackney_manager.erl:1438 │1439 470 │ case catch hackney_stream:start_link(StreamTo2, Ref, Client) of1440 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1441Compile directive 'nowarn_deprecated_catch' can be used to suppress1442warnings in selected modules.14431444 ┌─ src/hackney_manager.erl:1445 │1446 487 │ catch Transport:close(Socket),1447 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1448Compile directive 'nowarn_deprecated_catch' can be used to suppress1449warnings in selected modules.14501451 ┌─ src/hackney_manager.erl:1452 │1453 543 │ catch ets:delete(?REFS, Ref),1454 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1455Compile directive 'nowarn_deprecated_catch' can be used to suppress1456warnings in selected modules.14571458 ┌─ src/hackney_manager.erl:1459 │1460 544 │ catch ets:delete(?MODULE, Ref),1461 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1462Compile directive 'nowarn_deprecated_catch' can be used to suppress1463warnings in selected modules.14641465 ┌─ src/hackney_manager.erl:1466 │1467 559 │ catch ets:delete(?REFS, Ref),1468 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1469Compile directive 'nowarn_deprecated_catch' can be used to suppress1470warnings in selected modules.14711472 ┌─ src/hackney_manager.erl:1473 │1474 560 │ catch ets:delete(?MODULE, Ref),1475 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1476Compile directive 'nowarn_deprecated_catch' can be used to suppress1477warnings in selected modules.14781479 ┌─ src/hackney_manager.erl:1480 │1481 618 │ catch unlink(Pid),1482 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1483Compile directive 'nowarn_deprecated_catch' can be used to suppress1484warnings in selected modules.148514861487 ┌─ src/hackney_happy.erl:1488 │1489 101 │ catch exit(Pid, normal),1490 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1491Compile directive 'nowarn_deprecated_catch' can be used to suppress1492warnings in selected modules.14931494 ┌─ src/hackney_happy.erl:1495 │1496 128 │ case (catch inet_res:getbyname(Hostname, Type)) of1497 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1498Compile directive 'nowarn_deprecated_catch' can be used to suppress1499warnings in selected modules.15001501 ┌─ src/hackney_happy.erl:1502 │1503 151 │ case (catch inet:gethostbyname(Hostname, InetType)) of1504 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1505Compile directive 'nowarn_deprecated_catch' can be used to suppress1506warnings in selected modules.150715081509 ┌─ src/hackney_trace.erl:1510 │1511 132 │ (catch io:format(standard_io, "stop trace at ~s~n", [format_timestamp(Timestamp)])),1512 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1513Compile directive 'nowarn_deprecated_catch' can be used to suppress1514warnings in selected modules.15151516 ┌─ src/hackney_trace.erl:1517 │1518 139 │ (catch io:format(Fd, "stop trace at ~s~n", [format_timestamp(Timestamp)])),1519 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1520Compile directive 'nowarn_deprecated_catch' can be used to suppress1521warnings in selected modules.15221523 ┌─ src/hackney_trace.erl:1524 │1525 146 │ (catch io:format(Fd, "stop trace at ~s~n", [format_timestamp(Timestamp)])),1526 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1527Compile directive 'nowarn_deprecated_catch' can be used to suppress1528warnings in selected modules.15291530 ┌─ src/hackney_trace.erl:1531 │1532 147 │ (catch file:close(Fd)),1533 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1534Compile directive 'nowarn_deprecated_catch' can be used to suppress1535warnings in selected modules.15361537 ┌─ src/hackney_trace.erl:1538 │1539 154 │ (catch io:format(Fd, "stop trace at ~s~n", [format_timestamp(Timestamp)])),1540 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1541Compile directive 'nowarn_deprecated_catch' can be used to suppress1542warnings in selected modules.15431544 ┌─ src/hackney_trace.erl:1545 │1546 155 │ (catch file:close(Fd)),1547 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1548Compile directive 'nowarn_deprecated_catch' can be used to suppress1549warnings in selected modules.15501551 ┌─ src/hackney_trace.erl:1552 │1553 161 │ (catch print_hackney_trace(Fd, Sev, Timestamp, Who,1554 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1555Compile directive 'nowarn_deprecated_catch' can be used to suppress1556warnings in selected modules.15571558 ┌─ src/hackney_trace.erl:1559 │1560 165 │ (catch print_trace(Fd, Event)),1561 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1562Compile directive 'nowarn_deprecated_catch' can be used to suppress1563warnings in selected modules.156415651566 ┌─ src/hackney_pool.erl:1567 │1568 80 │ case catch gen_server:call(Pool, {checkout, Connection, Requester, RequestRef}, CheckoutTimeout) of1569 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1570Compile directive 'nowarn_deprecated_catch' can be used to suppress1571warnings in selected modules.15721573 ┌─ src/hackney_pool.erl:1574 │1575 101 │ _ = catch hackney_connection:close(Connection, Socket),1576 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1577Compile directive 'nowarn_deprecated_catch' can be used to suppress1578warnings in selected modules.15791580 ┌─ src/hackney_pool.erl:1581 │1582 130 │ _ = catch hackney_connection:close(Connection, Socket),1583 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1584Compile directive 'nowarn_deprecated_catch' can be used to suppress1585warnings in selected modules.15861587 ┌─ src/hackney_pool.erl:1588 │1589 134 │ catch hackney_connection:close(Connection, Socket),1590 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1591Compile directive 'nowarn_deprecated_catch' can be used to suppress1592warnings in selected modules.15931594 ┌─ src/hackney_pool.erl:1595 │1596 319 │ catch Transport:close(Socket),1597 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1598Compile directive 'nowarn_deprecated_catch' can be used to suppress1599warnings in selected modules.16001601 ┌─ src/hackney_pool.erl:1602 │1603 417 │ case catch hackney_connection:controlling_process(Connection, S, self()) of1604 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1605Compile directive 'nowarn_deprecated_catch' can be used to suppress1606warnings in selected modules.16071608 ┌─ src/hackney_pool.erl:1609 │1610 423 │ _ = catch hackney_connection:close(Connection, S),1611 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1612Compile directive 'nowarn_deprecated_catch' can be used to suppress1613warnings in selected modules.16141615 ┌─ src/hackney_pool.erl:1616 │1617 444 │ catch hackney_connection:close(Connection, Socket),1618 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1619Compile directive 'nowarn_deprecated_catch' can be used to suppress1620warnings in selected modules.16211622 ┌─ src/hackney_pool.erl:1623 │1624 543 │ _ = (catch hackney_connection:close(Connection, Socket)),1625 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.1626Compile directive 'nowarn_deprecated_catch' can be used to suppress1627warnings in selected modules.162816291630==> ex_dbug1631Compiling 1 file (.ex)1632Generated ex_dbug app1633==> typed_struct_nimble_options1634Compiling 1 file (.ex)1635Generated typed_struct_nimble_options app1636==> jido1637Compiling 81 files (.ex)1638 warning: unused require Logger1639 │1640 75 │ require Logger1641 │ ~1642 │1643 └─ lib/jido/signal/dispatch/webhook.ex:75:316441645 warning: unused require Logger1646 │1647 5 │ require Logger1648 │ ~1649 │1650 └─ lib/jido/agent/server_output.ex:5:316511652 warning: unused require OK1653 │1654 8 │ require OK1655 │ ~1656 │1657 └─ lib/jido/agent/server_callback.ex:8:316581659 warning: unused require Logger1660 │1661 18 │ require Logger1662 │ ~1663 │1664 └─ lib/jido/skills/task_skill.ex:18:316651666 warning: unused require Logger1667 │1668 5 │ require Logger1669 │ ~1670 │1671 └─ lib/jido/agent/server_runtime.ex:5:316721673 warning: unused require Logger1674 │1675 2 │ require Logger1676 │ ~1677 │1678 └─ lib/jido/agent/directive.ex:2:316791680 warning: a struct for Jido.Actions.Tasks.Task is expected on struct update:16811682 %Jido.Actions.Tasks.Task{task | completed: !task.completed}16831684 but got type:16851686 dynamic(not nil)16871688 where "task" was given the type:16891690 # type: dynamic(not nil)1691 # from: lib/jido/actions/tasks.ex:154:91692 task16931694 when defining the variable "task", you must also pattern match on "%Jido.Actions.Tasks.Task{}"16951696 type warning found at:1697 │1698 155 │ updated_task = %Task{task | completed: !task.completed}1699 │ ~1700 │1701 └─ lib/jido/actions/tasks.ex:155:26: Jido.Actions.Tasks.ToggleTask.run/217021703 warning: a struct for Jido.Actions.Tasks.Task is expected on struct update:17041705 %Jido.Actions.Tasks.Task{task | title: params.title, deadline: params.deadline}17061707 but got type:17081709 dynamic(not nil)17101711 where "task" was given the type:17121713 # type: dynamic(not nil)1714 # from: lib/jido/actions/tasks.ex:107:91715 task17161717 when defining the variable "task", you must also pattern match on "%Jido.Actions.Tasks.Task{}"17181719 type warning found at:1720 │1721 108 │ updated_task = %Task{task | title: params.title, deadline: params.deadline}1722 │ ~1723 │1724 └─ lib/jido/actions/tasks.ex:108:26: Jido.Actions.Tasks.UpdateTask.run/217251726 warning: this clause of defp execute_signal/2 is never used (or it will always fail/warn when invoked)1727 │1728 120 │ defp execute_signal(%ServerState{} = state, _invalid_signal) do1729 │ ~1730 │1731 └─ lib/jido/agent/server_runtime.ex:120:10: Jido.Agent.Server.Runtime.execute_signal/217321733 warning: this clause of defp apply_signal_to_first_instruction/2 is never used (or it will always fail/warn when invoked)1734 │1735 297 │ defp apply_signal_to_first_instruction(%Signal{}, []) do1736 │ ~1737 │1738 └─ lib/jido/agent/server_runtime.ex:297:10: Jido.Agent.Server.Runtime.apply_signal_to_first_instruction/217391740 warning: the following clause will never match:17411742 {:error, reason, other} ->17431744 it is expected to match on type:17451746 dynamic(({:error or :ok, term()} and not {:ok, term()}) or {:error, %Jido.Error{}})17471748 type warning found at:1749 │1750 144 │ {:error, reason, other} ->1751 │ ~1752 │1753 └─ lib/jido/exec.ex:144:7: Jido.Exec.run/417541755 warning: the following clause cannot match because the previous clauses already matched all possible values:17561757 error ->17581759 it attempts to match on the result of:17601761 deliver_signal(state)17621763 which has the already matched type:17641765 dynamic(1766 {:ok,1767 {:error, binary()} or1768 {:ok,1769 %Jido.Signal{1770 jido_dispatch:1771 nil or empty_list() or non_empty_list(term(), term()) or1772 {atom(), empty_list() or non_empty_list(term(), term())},1773 dataschema: nil or bitstring(),1774 datacontenttype: nil or bitstring(),1775 time: nil or bitstring(),1776 subject: nil or bitstring(),1777 type: bitstring(),1778 source: bitstring(),1779 specversion: binary()1780 }}}1781 )17821783 where "error" was given the type:17841785 # type: dynamic(1786 {:ok,1787 {:error, binary()} or1788 {:ok,1789 %Jido.Signal{1790 jido_dispatch:1791 nil or empty_list() or non_empty_list(term(), term()) or1792 {atom(), empty_list() or non_empty_list(term(), term())},1793 dataschema: nil or bitstring(),1794 datacontenttype: nil or bitstring(),1795 time: nil or bitstring(),1796 subject: nil or bitstring(),1797 type: bitstring(),1798 source: bitstring(),1799 specversion: binary()1800 }}}1801 )1802 # from: lib/jido/sensors/heartbeat_sensor.ex:74:71803 error18041805 type warning found at:1806 │1807 74 │ error ->1808 │ ~1809 │1810 └─ lib/jido/sensors/heartbeat_sensor.ex:74:13: Jido.Sensors.Heartbeat.handle_info/218111812 warning: the following pattern will never match:18131814 {:ok, _new_pid} = result <- start(state, child_spec)18151816 because the right-hand side has type:18171818 dynamic(1819 ({:error or :ok, term()} and not {:ok, term()}) or {:error, term()} or1820 {:ok, %Jido.Agent.Server.State{}, empty_list()} or1821 {:ok, %Jido.Agent.Server.State{child_supervisor: not nil}, term()}1822 )18231824 where "child_spec" was given the type:18251826 # type: dynamic()1827 # from: lib/jido/agent/server_process.ex:195:501828 child_spec18291830 where "state" was given the types:18311832 # type: dynamic(%Jido.Agent.Server.State{})1833 # from: lib/jido/agent/server_process.ex:195:301834 %Jido.Agent.Server.State{} = state18351836 # type: dynamic(%Jido.Agent.Server.State{child_supervisor: pid()})1837 # from: lib/jido/agent/server_process.ex:198:171838 terminate(state, child_pid)18391840 type warning found at:1841 │1842 199 │ {:ok, _new_pid} = result <- start(state, child_spec) do1843 │ ~1844 │1845 └─ lib/jido/agent/server_process.ex:199:26: Jido.Agent.Server.Process.restart/318461847 warning: a struct for Jido.Signal.Router.TrieNode is expected on struct update:18481849 %Jido.Signal.Router.TrieNode{1850 node1851 | handlers: %Jido.Signal.Router.NodeHandlers{1852 handlers:1853 Enum.reduce(1854 handlers,1855 node.handlers.handlers || [],1856 fn handler, acc -> insert_handler_sorted(acc, handler) end1857 ),1858 matchers: node.handlers.matchers1859 }1860 }18611862 but got type:18631864 dynamic()18651866 where "node" was given the type:18671868 # type: dynamic()1869 # from: lib/jido/signal/router/engine.ex:346:141870 node18711872 when defining the variable "node", you must also pattern match on "%Jido.Signal.Router.TrieNode{}"18731874 type warning found at:1875 │1876 363 │ %TrieNode{1877 │ ~1878 │1879 └─ lib/jido/signal/router/engine.ex:363:13: Jido.Signal.Router.Engine.do_add_path_route/318801881 warning: a struct for Jido.Signal.Router.TrieNode is expected on struct update:18821883 %Jido.Signal.Router.TrieNode{1884 node1885 | handlers: %Jido.Signal.Router.NodeHandlers{1886 handlers: node.handlers.handlers,1887 matchers: insert_matcher_sorted(node.handlers.matchers || [], matcher)1888 }1889 }18901891 but got type:18921893 dynamic()18941895 where "node" was given the type:18961897 # type: dynamic()1898 # from: lib/jido/signal/router/engine.ex:407:141899 node19001901 when defining the variable "node", you must also pattern match on "%Jido.Signal.Router.TrieNode{}"19021903 type warning found at:1904 │1905 408 │ %TrieNode{1906 │ ~1907 │1908 └─ lib/jido/signal/router/engine.ex:408:13: Jido.Signal.Router.Engine.do_add_pattern_route/319091910 warning: the following clause cannot match because the previous clauses already matched all possible values:19111912 _ ->19131914 it attempts to match on the result of:19151916 list(router)19171918 which has the already matched type:19191920 dynamic({:ok, term()})19211922 type warning found at:1923 │1924 710 │ _ -> false1925 │ ~1926 │1927 └─ lib/jido/signal/router.ex:710:9: Jido.Signal.Router.has_route?/219281929 warning: this clause of defp resolve_adapter/1 is never used (or it will always fail/warn when invoked)1930 │1931 357 │ defp resolve_adapter(nil), do: {:error, :no_adapter_needed}1932 │ ~1933 │1934 └─ lib/jido/signal/dispatch.ex:357:8: Jido.Signal.Dispatch.resolve_adapter/119351936 warning: the following clause will never match:19371938 {:ok, nil} ->19391940 because it attempts to match on the result of:19411942 Map.fetch(1943 %{1944 bus: Jido.Signal.Dispatch.Bus,1945 console: Jido.Signal.Dispatch.ConsoleAdapter,1946 http: Jido.Signal.Dispatch.Http,1947 logger: Jido.Signal.Dispatch.LoggerAdapter,1948 named: Jido.Signal.Dispatch.Named,1949 nil: nil,1950 noop: Jido.Signal.Dispatch.NoopAdapter,1951 pid: Jido.Signal.Dispatch.PidAdapter,1952 pubsub: Jido.Signal.Dispatch.PubSub,1953 webhook: Jido.Signal.Dispatch.Webhook1954 },1955 adapter1956 )19571958 which has type:19591960 dynamic(1961 :error or1962 {:ok,1963 Jido.Signal.Dispatch.Bus or Jido.Signal.Dispatch.ConsoleAdapter or Jido.Signal.Dispatch.Http or1964 Jido.Signal.Dispatch.LoggerAdapter or Jido.Signal.Dispatch.Named or1965 Jido.Signal.Dispatch.NoopAdapter or Jido.Signal.Dispatch.PidAdapter or1966 Jido.Signal.Dispatch.PubSub or Jido.Signal.Dispatch.Webhook}1967 )19681969 type warning found at:1970 │1971 364 │ {:ok, nil} ->1972 │ ~~~~~~~~~~~~~1973 │1974 └─ lib/jido/signal/dispatch.ex:364: Jido.Signal.Dispatch.resolve_adapter/119751976Generated jido app1977==> jido_ai1978Compiling 40 files (.ex)1979 warning: unused require Logger1980 │1981 7 │ require Logger1982 │ ~1983 │1984 └─ lib/jido_ai/actions/openai_ex/tool_helper.ex:7:319851986 warning: unused require Logger1987 │1988 3 │ require Logger1989 │ ~1990 │1991 └─ lib/jido_ai/provider.ex:3:319921993 warning: unused require Logger1994 │1995 21 │ require Logger1996 │ ~1997 │1998 └─ lib/jido_ai/prompt/template.ex:21:319992000 warning: unused require Logger2001 │2002 13 │ require Logger2003 │ ~2004 │2005 └─ lib/jido_ai/providers/helpers.ex:13:320062007 warning: unused require Logger2008 │2009 5 │ require Logger2010 │ ~2011 │2012 └─ lib/jido_ai/skill.ex:5:320132014 warning: unused require Logger2015 │2016 94 │ require Logger2017 │ ~2018 │2019 └─ lib/mix/tasks/models.ex:94:320202021 warning: comparison between distinct types found:20222023 pricing == nil20242025 given types:20262027 dynamic(not false and not nil) == nil20282029 where "pricing" was given the type:20302031 # type: dynamic(not false and not nil)2032 # from: lib/jido_ai/providers/helpers.ex:296:122033 pricing20342035 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 false20362037 type warning found at:2038 │2039 296 │ if pricing && !is_nil(pricing) do2040 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2041 │2042 └─ lib/jido_ai/providers/helpers.ex:296: Jido.AI.Provider.Helpers.merge_model_information/120432044 warning: a struct for Jido.AI.Prompt.Splitter is expected on struct update:20452046 %Jido.AI.Prompt.Splitter{tok | done: true}20472048 but got type:20492050 dynamic(2051 %{..., input_tokens: list(term()), model: term(), offset: integer()} and2052 not %Jido.AI.Prompt.Splitter{offset: integer(), done: true}2053 )20542055 where "tok" was given the types:20562057 # type: dynamic(2058 %{..., input_tokens: term(), model: term(), offset: integer()} and2059 not %Jido.AI.Prompt.Splitter{offset: integer(), done: true}2060 )2061 # from: lib/jido_ai/prompt/splitter.ex:41:182062 {slice, tok} = get_slice(tok, remaining_tokens)20632064 # type: dynamic(2065 %{..., input_tokens: term(), model: term(), offset: integer()} and2066 not %Jido.AI.Prompt.Splitter{offset: integer(), done: true}2067 )2068 # from: lib/jido_ai/prompt/splitter.ex:44:212069 tok.offset >= length(tok.input_tokens)20702071 # type: dynamic(2072 %{..., input_tokens: list(term()), model: term(), offset: integer()} and2073 not %Jido.AI.Prompt.Splitter{offset: integer(), done: true}2074 )2075 # from: lib/jido_ai/prompt/splitter.ex:44:242076 length(tok.input_tokens)20772078 when defining the variable "tok", you must also pattern match on "%Jido.AI.Prompt.Splitter{}"20792080 type warning found at:2081 │2082 45 │ %Jido.AI.Prompt.Splitter{tok | done: true}2083 │ ~2084 │2085 └─ lib/jido_ai/prompt/splitter.ex:45:9: Jido.AI.Prompt.Splitter.next_chunk/220862087 warning: this clause of defp get_slice/2 is never used (or it will always fail/warn when invoked)2088 │2089 53 │ defp get_slice(%Jido.AI.Prompt.Splitter{done: true} = tok, _num_tokens) do2090 │ ~2091 │2092 └─ lib/jido_ai/prompt/splitter.ex:53:8: Jido.AI.Prompt.Splitter.get_slice/220932094 warning: a struct for Jido.AI.Prompt.Splitter is expected on struct update:20952096 %Jido.AI.Prompt.Splitter{tok | offset: tok.offset + tokens}20972098 but got type:20992100 dynamic(2101 %{..., input_tokens: term(), model: term(), offset: integer()} and2102 not %Jido.AI.Prompt.Splitter{done: true}2103 )21042105 where "tok" was given the types:21062107 # type: dynamic(not %Jido.AI.Prompt.Splitter{done: true})2108 # from: lib/jido_ai/prompt/splitter.ex:57:182109 tok21102111 # type: dynamic(%{..., input_tokens: term()} and not %Jido.AI.Prompt.Splitter{done: true})2112 # from: lib/jido_ai/prompt/splitter.ex:58:182113 Enum.slice(tok.input_tokens, tok.offset, num_tokens)21142115 # type: dynamic(2116 %{..., input_tokens: term(), offset: integer()} and not %Jido.AI.Prompt.Splitter{done: true}2117 )2118 # from: lib/jido_ai/prompt/splitter.ex:58:182119 Enum.slice(tok.input_tokens, tok.offset, num_tokens)21202121 # type: dynamic(2122 %{..., input_tokens: term(), model: term(), offset: integer()} and2123 not %Jido.AI.Prompt.Splitter{done: true}2124 )2125 # from: lib/jido_ai/prompt/splitter.ex:60:322126 Jido.AI.Tokenizer.decode(slice, tok.model)21272128 when defining the variable "tok", you must also pattern match on "%Jido.AI.Prompt.Splitter{}"21292130 type warning found at:2131 │2132 61 │ {output, %Jido.AI.Prompt.Splitter{tok | offset: tok.offset + tokens}}2133 │ ~2134 │2135 └─ lib/jido_ai/prompt/splitter.ex:61:14: Jido.AI.Prompt.Splitter.get_slice/221362137 warning: incompatible types given to make_request/2:21382139 make_request(model, response_id)21402141 given types:21422143 dynamic(%Jido.AI.Model{provider: :openai}), -binary()-21442145 but expected one of:21462147 %{..., api_key: term()}, empty_list() or non_empty_list(term(), term())21482149 where "model" was given the type:21502151 # type: dynamic(%Jido.AI.Model{provider: :openai})2152 # from: lib/jido_ai/actions/openai_ex/response_retrieve.ex:48:232153 {:ok, model} <- validate_and_get_model(params)21542155 where "response_id" was given the type:21562157 # type: binary()2158 # from: lib/jido_ai/actions/openai_ex/response_retrieve.ex:49:292159 {:ok, response_id} <- validate_response_id(params)21602161 type warning found at:2162 │2163 50 │ case make_request(model, response_id) do2164 │ ~2165 │2166 └─ lib/jido_ai/actions/openai_ex/response_retrieve.ex:50:12: Jido.AI.Actions.OpenaiEx.ResponseRetrieve.run/221672168Generated jido_ai app2169==> property_table2170Compiling 8 files (.ex)2171Generated property_table app2172==> nerves_uevent2173 CC uevent.o2174 LD uevent2175Compiling 5 files (.ex)2176Generated nerves_uevent app2177==> nerves_runtime2178Compiling 14 files (.ex)2179Generated nerves_runtime app2180==> toolshed2181Compiling 5 files (.ex)2182Generated toolshed app2183==> httpoison2184Compiling 3 files (.ex)2185Generated httpoison app2186==> tentacat2187Compiling 62 files (.ex)2188 warning: incompatible types given as default arguments to delete/3:21892190 binary(), -empty_list()-, empty_list()21912192 but expected one of:21932194 binary(), %Tentacat.Client{endpoint: binary()}, term()21952196 where "x0" (context :elixir_def) was given the types:21972198 # type: binary()2199 # from: /work/proj/deps_rpi4/httpoison/lib/httpoison/base.ex:5902200 super(x0, [], [])22012202 # type: dynamic()2203 # from: /work/proj/deps_rpi4/httpoison/lib/httpoison/base.ex2204 x022052206 type warning found at:2207 │2208 590 │ def delete(url, headers \\ [], options \\ []),2209 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2210 │2211 └─ /work/proj/deps_rpi4/httpoison/lib/httpoison/base.ex:590: Tentacat.delete/122122213 warning: incompatible types given as default arguments to get/3:22142215 binary(), -empty_list()-, empty_list()22162217 but expected one of:22182219 (2220 binary(),2221 %Tentacat.Client{endpoint: binary()},2222 empty_list() or map() or non_empty_list(term(), term())2223 )22242225 where "x0" (context :elixir_def) was given the types:22262227 # type: binary()2228 # from: /work/proj/deps_rpi4/httpoison/lib/httpoison/base.ex:4662229 super(x0, [], [])22302231 # type: dynamic()2232 # from: /work/proj/deps_rpi4/httpoison/lib/httpoison/base.ex2233 x022342235 type warning found at:2236 │2237 466 │ def get(url, headers \\ [], options \\ []), do: request(:get, url, "", headers, options)2238 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2239 │2240 └─ /work/proj/deps_rpi4/httpoison/lib/httpoison/base.ex:466: Tentacat.get/122412242Generated tentacat app2243==> jido_tools2244Compiling 3 files (.ex)2245 warning: the following pattern will never match:22462247 {:ok, api_key} <- System.fetch_env!("OPENWEATHER_API_KEY")22482249 because the right-hand side has type:22502251 binary()22522253 type warning found at:2254 │2255 69 │ with {:ok, api_key} <- System.fetch_env!("OPENWEATHER_API_KEY") do2256 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2257 │2258 └─ lib/jido_tools/weather.ex:69: Jido.Tools.Weather.build_opts/122592260Generated jido_tools app2261==> nerves_compatibility_test2262Compiling 2 files (.ex)2263Generated nerves_compatibility_test app2264* skipping runtime configuration (config/runtime.exs not found)2265* creating _build/rpi4/rel/nerves_compatibility_test/releases/0.1.0/vm.args2266Building firmware...2267** (Mix) Unexpected executable format for '/work/proj/_build/rpi4/rel/nerves_compatibility_test/lib/jaxon-2.0.8/priv/decoder.so'22682269Got:2270 %{endian: :little, flags: 0, machine: :x86_64, type: :elf, bits: 64}22712272Expecting:2273 %{endian: :little, flags: 0, machine: :aarch64, type: :elf, bits: 64}22742275This file was compiled for the host or a different target and probably will not work.22762277If you are very sure you know what you are doing, place an empty file in the same2278directory as the offending file(s) called '.noscrub'. This disables scrubbing for2279that directory.2280