dawdle_db

Build log

nerves_system_mangopi_mq_pro

dawdle_db 0.7.3 · fail · run dawdle_db-0.7.3-1791119445571
1088 of 1088 lines
1Resolving Hex dependencies...2Resolution completed in 0.322s3Unchanged:4  backoff 1.1.65  certifi 2.15.06  circular_buffer 1.1.07  combine 0.10.08  confex 3.5.19  connection 1.1.010  dawdle 0.7.011  dawdle_db 0.7.312  db_connection 2.10.213  decimal 2.4.1 VULNERABLE!14    EEF-CVE-2026-32686 (MEDIUM)15    aka: CVE-2026-32686, GHSA-rhv4-8758-jx7v16    Unbounded exponent in decimal enables unauthenticated DoS17    https://osv.dev/vulnerability/EEF-CVE-2026-3268618  ecto 3.8.419  ecto_sql 3.8.320  elixir_make 0.10.021  ex_aws 2.6.122  ex_aws_sqs 3.5.023  expo 1.1.124  gen_state_machine 2.1.025  gettext 0.26.226  hackney 1.25.0 VULNERABLE!27    EEF-CVE-2026-47071 (HIGH)28    aka: CVE-2026-47071, GHSA-gp9c-pm5m-5cxr29    SOCKS5 TLS upgrade ignores caller timeout in hackney30    https://osv.dev/vulnerability/EEF-CVE-2026-470713132    EEF-CVE-2026-47076 (MEDIUM)33    aka: CVE-2026-47076, GHSA-pj7v-xfvx-wmjq34    SSRF allowlist bypass via percent-encoded host in hackney35    https://osv.dev/vulnerability/EEF-CVE-2026-470763637    EEF-CVE-2026-47069 (LOW)38    aka: CVE-2026-47069, GHSA-mp55-p8c9-rfw239    CRLF injection in cookie domain/path options in hackney40    https://osv.dev/vulnerability/EEF-CVE-2026-470694142    EEF-CVE-2026-47075 (MEDIUM)43    aka: CVE-2026-47075, GHSA-j9wq-vxxc-94wf44    CR/LF injection in query parameter in hackney45    https://osv.dev/vulnerability/EEF-CVE-2026-4707546  idna 6.1.147  interactive_cmd 0.1.448  libring 1.7.049  metrics 1.0.150  mime 2.0.751  mimerl 1.5.052  module_config 1.0.053  nerves 2.0.0-pre.254  nerves_discovery 0.1.555  nerves_logging 0.2.456  nerves_runtime 0.13.1357  nerves_system_bbb 2.30.258  nerves_system_br 1.34.459  nerves_system_mangopi_mq_pro 0.17.260  nerves_system_qemu_aarch64 0.4.261  nerves_system_rpi0 2.1.262  nerves_system_rpi4 2.1.263  nerves_system_rpi5 2.1.264  nerves_system_trellis 0.5.065  nerves_system_x86_64 1.34.266  nerves_toolchain_aarch64_nerves_linux_gnu 15.3.167  nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.168  nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.169  nerves_toolchain_riscv64_nerves_linux_gnu 15.3.170  nerves_toolchain_x86_64_nerves_linux_musl 15.3.171  nerves_uevent 0.1.772  parse_trans 3.4.173  poison 4.0.174  postgrex 0.15.1375  property_table 0.3.476  ring_logger 0.11.777  ssl_verify_fun 1.1.778  swarm 3.4.079  sweet_xml 0.7.580  tablet 0.3.381  telemetry 0.4.382  timex 3.7.1383  toolshed 0.5.084  tzdata 1.2.285  uboot_env 1.0.286  unicode_util_compat 0.7.187* Getting dawdle_db (Hex package)88* Getting nerves (Hex package)89* Getting ring_logger (Hex package)90* Getting toolshed (Hex package)91* Getting nerves_runtime (Hex package)92* Getting nerves_system_bbb (Hex package)93* Getting nerves_system_mangopi_mq_pro (Hex package)94* Getting nerves_system_qemu_aarch64 (Hex package)95* Getting nerves_system_rpi0 (Hex package)96* Getting nerves_system_rpi4 (Hex package)97* Getting nerves_system_rpi5 (Hex package)98* Getting nerves_system_trellis (Hex package)99* Getting nerves_system_x86_64 (Hex package)100* Getting nerves_system_br (Hex package)101* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)102* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)103* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)104* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)105* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)106* Getting nerves_logging (Hex package)107* Getting nerves_uevent (Hex package)108* Getting uboot_env (Hex package)109* Getting elixir_make (Hex package)110* Getting property_table (Hex package)111* Getting circular_buffer (Hex package)112* Getting interactive_cmd (Hex package)113* Getting nerves_discovery (Hex package)114* Getting tablet (Hex package)115* Getting confex (Hex package)116* Getting dawdle (Hex package)117* Getting ecto (Hex package)118* Getting ecto_sql (Hex package)119* Getting ex_aws (Hex package)120* Getting poison (Hex package)121* Getting postgrex (Hex package)122* Getting swarm (Hex package)123* Getting telemetry (Hex package)124* Getting timex (Hex package)125* Getting combine (Hex package)126* Getting gettext (Hex package)127* Getting tzdata (Hex package)128* Getting expo (Hex package)129* Getting gen_state_machine (Hex package)130* Getting libring (Hex package)131* Getting connection (Hex package)132* Getting db_connection (Hex package)133* Getting decimal (Hex package)134* Getting mime (Hex package)135* Getting backoff (Hex package)136* Getting ex_aws_sqs (Hex package)137* Getting hackney (Hex package)138* Getting module_config (Hex package)139* Getting sweet_xml (Hex package)140* Getting certifi (Hex package)141* Getting idna (Hex package)142* Getting metrics (Hex package)143* Getting mimerl (Hex package)144* Getting parse_trans (Hex package)145* Getting ssl_verify_fun (Hex package)146* Getting unicode_util_compat (Hex package)147Found packages with security advisories, see above for details148==> nerves_system_br149Generated nerves_system_br app150==> connection151Compiling 1 file (.ex)152     warning: using single-quoted strings to represent charlists is deprecated.153     Use ~c"" if you indeed want a charlist or use "" instead.154     You may run "mix format --migrate" to change all single-quoted155     strings to use the ~c sigil and fix this warning.156     │157 553 │         [{:data, [{'State', mod_state}]}]158     │                    ~159     │160     └─ lib/connection.ex:553:20161162     warning: using single-quoted strings to represent charlists is deprecated.163     Use ~c"" if you indeed want a charlist or use "" instead.164     You may run "mix format --migrate" to change all single-quoted165     strings to use the ~c sigil and fix this warning.166     │167 680 │     format = '** Generic server ~p terminating \n' ++168     │              ~169     │170     └─ lib/connection.ex:680:14171172     warning: using single-quoted strings to represent charlists is deprecated.173     Use ~c"" if you indeed want a charlist or use "" instead.174     You may run "mix format --migrate" to change all single-quoted175     strings to use the ~c sigil and fix this warning.176     │177 681 │       '** Last message in was ~p~n' ++ ## No last message178     │       ~179     │180     └─ lib/connection.ex:681:7181182     warning: using single-quoted strings to represent charlists is deprecated.183     Use ~c"" if you indeed want a charlist or use "" instead.184     You may run "mix format --migrate" to change all single-quoted185     strings to use the ~c sigil and fix this warning.186     │187 682 │       '** When Server state == ~p~n' ++188     │       ~189     │190     └─ lib/connection.ex:682:7191192     warning: using single-quoted strings to represent charlists is deprecated.193     Use ~c"" if you indeed want a charlist or use "" instead.194     You may run "mix format --migrate" to change all single-quoted195     strings to use the ~c sigil and fix this warning.196     │197 683 │       '** Reason for termination == ~n** ~p~n'198     │       ~199     │200     └─ lib/connection.ex:683:7201202Generated connection app203==> combine204Compiling 6 files (.ex)205    warning: the variable "n" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator206    │207 26 │       <<bits::bitstring-size(n), rest::bitstring>> ->208    │                              ~209    │210    └─ lib/combine/parsers/binary.ex:26:30: Combine.Parsers.Binary.bits_impl/2211212    warning: the variable "bits_size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator213    │214 48 │       <<bits::bitstring-size(bits_size), rest::bitstring>> ->215    │                              ~216    │217    └─ lib/combine/parsers/binary.ex:48:30: Combine.Parsers.Binary.bytes_impl/2218219    warning: the variable "size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator220    │221 70 │           <<int::big-unsigned-size(size), rest::bitstring>> ->222    │                                    ~223    │224    └─ lib/combine/parsers/binary.ex:70:36: Combine.Parsers.Binary.uint_impl/3225226    warning: the variable "size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator227    │228 77 │           <<int::little-unsigned-size(size), rest::bitstring>> ->229    │                                       ~230    │231    └─ lib/combine/parsers/binary.ex:77:39: Combine.Parsers.Binary.uint_impl/3232233     warning: the variable "size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator234     │235 101 │           <<int::big-signed-size(size), rest::bitstring>> ->236     │                                  ~237     │238     └─ lib/combine/parsers/binary.ex:101:34: Combine.Parsers.Binary.int_impl/3239240     warning: the variable "size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator241     │242 108 │           <<int::little-signed-size(size), rest::bitstring>> ->243     │                                     ~244     │245     └─ lib/combine/parsers/binary.ex:108:37: Combine.Parsers.Binary.int_impl/3246247     warning: the variable "size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator248     │249 128 │       <<num::float-size(size), rest::bitstring>> ->250     │                         ~251     │252     └─ lib/combine/parsers/binary.ex:128:25: Combine.Parsers.Binary.float_impl/2253254     warning: the variable "byte_size" (context Combine.Parsers.Text) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator255     │256 432 │         <<^expected::binary-size(byte_size), rest::binary>> ->257     │                                  ~258     │259     └─ lib/combine/parsers/text.ex:432:34: Combine.Parsers.Text.string_impl/2260261     warning: the following clause is redundant:262263         defp word_of_impl(%Combine.ParserState{...} = state, _pattern)264265     it has type:266267         dynamic(%Combine.ParserState{status: :ok}), dynamic()268269     previous clauses have already matched on the following types:270271         %Combine.ParserState{status: :error}, term()272         %Combine.ParserState{status: :ok}, term()273274     │275 488 │   defp word_of_impl(%ParserState{status: :ok} = state, _pattern) do276     │        ~277     │278     └─ lib/combine/parsers/text.ex:488:8: Combine.Parsers.Text.word_of_impl/2279280Generated combine app281==> mime282Compiling 1 file (.ex)283Generated mime app284==> libring285Compiling 5 files (.ex)286Generated libring app287==> circular_buffer288Compiling 1 file (.ex)289Generated circular_buffer app290==> poison291Compiling 4 files (.ex)292     warning: using single-quoted strings to represent charlists is deprecated.293     Use ~c"" if you indeed want a charlist or use "" instead.294     You may run "mix format --migrate" to change all single-quoted295     strings to use the ~c sigil and fix this warning.296     │297 127 │   for {char, seq} <- Enum.zip('"\\\n\t\r\f\b', '"\\ntrfb') do298     │                               ~299     │300     └─ lib/poison/encoder.ex:127:31301302     warning: using single-quoted strings to represent charlists is deprecated.303     Use ~c"" if you indeed want a charlist or use "" instead.304     You may run "mix format --migrate" to change all single-quoted305     strings to use the ~c sigil and fix this warning.306     │307 127 │   for {char, seq} <- Enum.zip('"\\\n\t\r\f\b', '"\\ntrfb') do308     │                                                ~309     │310     └─ lib/poison/encoder.ex:127:48311312     warning: using single-quoted strings to represent charlists is deprecated.313     Use ~c"" if you indeed want a charlist or use "" instead.314     You may run "mix format --migrate" to change all single-quoted315     strings to use the ~c sigil and fix this warning.316     │317 174 │        when char <= 0x1F or char in '"\\' do318     │                                     ~319     │320     └─ lib/poison/encoder.ex:174:37321322    warning: using single-quoted strings to represent charlists is deprecated.323    Use ~c"" if you indeed want a charlist or use "" instead.324    You may run "mix format --migrate" to change all single-quoted325    strings to use the ~c sigil and fix this warning.326    │327 94 │        when char in '-0123456789' do328    │                     ~329    │330    └─ lib/poison/parser.ex:94:21331332     warning: using single-quoted strings to represent charlists is deprecated.333     Use ~c"" if you indeed want a charlist or use "" instead.334     You may run "mix format --migrate" to change all single-quoted335     strings to use the ~c sigil and fix this warning.336     │337 189 │        when char in '123456789' do338     │                     ~339     │340     └─ lib/poison/parser.ex:189:21341342     warning: using single-quoted strings to represent charlists is deprecated.343     Use ~c"" if you indeed want a charlist or use "" instead.344     You may run "mix format --migrate" to change all single-quoted345     strings to use the ~c sigil and fix this warning.346     │347 205 │   defp number_exp(<<e>> <> rest, frac, pos, acc) when e in 'eE' do348     │                                                            ~349     │350     └─ lib/poison/parser.ex:205:60351352     warning: using single-quoted strings to represent charlists is deprecated.353     Use ~c"" if you indeed want a charlist or use "" instead.354     You may run "mix format --migrate" to change all single-quoted355     strings to use the ~c sigil and fix this warning.356     │357 238 │        when char in '0123456789' do358     │                     ~359     │360     └─ lib/poison/parser.ex:238:21361362     warning: using single-quoted strings to represent charlists is deprecated.363     Use ~c"" if you indeed want a charlist or use "" instead.364     You may run "mix format --migrate" to change all single-quoted365     strings to use the ~c sigil and fix this warning.366     │367 246 │   defp number_digits_count(<<char>> <> rest, acc) when char in '0123456789' do368     │                                                                ~369     │370     └─ lib/poison/parser.ex:246:64371372     warning: using single-quoted strings to represent charlists is deprecated.373     Use ~c"" if you indeed want a charlist or use "" instead.374     You may run "mix format --migrate" to change all single-quoted375     strings to use the ~c sigil and fix this warning.376     │377 270 │   for {seq, char} <- Enum.zip('"\\ntr/fb', '"\\\n\t\r/\f\b') do378     │                               ~379     │380     └─ lib/poison/parser.ex:270:31381382     warning: using single-quoted strings to represent charlists is deprecated.383     Use ~c"" if you indeed want a charlist or use "" instead.384     You may run "mix format --migrate" to change all single-quoted385     strings to use the ~c sigil and fix this warning.386     │387 270 │   for {seq, char} <- Enum.zip('"\\ntr/fb', '"\\\n\t\r/\f\b') do388     │                                            ~389     │390     └─ lib/poison/parser.ex:270:44391392     warning: using single-quoted strings to represent charlists is deprecated.393     Use ~c"" if you indeed want a charlist or use "" instead.394     You may run "mix format --migrate" to change all single-quoted395     strings to use the ~c sigil and fix this warning.396     │397 277 │             when a1 in 'dD' and a2 in 'dD' and b1 in '89abAB' and398     │                        ~399     │400     └─ lib/poison/parser.ex:277:24401402     warning: using single-quoted strings to represent charlists is deprecated.403     Use ~c"" if you indeed want a charlist or use "" instead.404     You may run "mix format --migrate" to change all single-quoted405     strings to use the ~c sigil and fix this warning.406     │407 277 │             when a1 in 'dD' and a2 in 'dD' and b1 in '89abAB' and408     │                                       ~409     │410     └─ lib/poison/parser.ex:277:39411412     warning: using single-quoted strings to represent charlists is deprecated.413     Use ~c"" if you indeed want a charlist or use "" instead.414     You may run "mix format --migrate" to change all single-quoted415     strings to use the ~c sigil and fix this warning.416     │417 277 │             when a1 in 'dD' and a2 in 'dD' and b1 in '89abAB' and418     │                                                      ~419     │420     └─ lib/poison/parser.ex:277:54421422     warning: using single-quoted strings to represent charlists is deprecated.423     Use ~c"" if you indeed want a charlist or use "" instead.424     You may run "mix format --migrate" to change all single-quoted425     strings to use the ~c sigil and fix this warning.426     │427 334 │   defp skip_whitespace(<<char>> <> rest, pos) when char in '\s\n\t\r' do428     │                                                            ~429     │430     └─ lib/poison/parser.ex:334:60431432    warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead433    │434 42 │   if Application.get_env(:poison, :native) do435    │                  ~436    │437    └─ lib/poison/parser.ex:42:18: Poison.Parser (module)438439    warning: use Bitwise is deprecated. import Bitwise instead440    │441 46 │   use Bitwise442    │   ~~~~~~~~~~~443    │444    └─ lib/poison/parser.ex:46: Poison.Parser (module)445446     warning: the variable "count" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator447     │448 240 │     <<digits::binary-size(count), rest::binary>> = string449     │                           ~450     │451     └─ lib/poison/parser.ex:240:27: Poison.Parser.number_digits/2452453     warning: the variable "count" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator454     │455 266 │     <<chunk::binary-size(count), rest::binary>> = string456     │                          ~457     │458     └─ lib/poison/parser.ex:266:26: Poison.Parser.string_continue/3459460     warning: use Bitwise is deprecated. import Bitwise instead461     │462 117 │   use Bitwise463     │   ~~~~~~~~~~~464     │465     └─ lib/poison/encoder.ex:117: Poison.Encoder.BitString (module)466467     warning: the variable "size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator468     │469 169 │     <<chunk::binary-size(size), rest::binary>> = string470     │                          ~471     │472     └─ lib/poison/encoder.ex:169:26: Poison.Encoder.BitString.escape/2473474Generated poison app475==> nerves_compatibility_test476===> Analyzing applications...477===> Compiling mimerl478==> ssl_verify_fun479Compiling 7 files (.erl)480Generated ssl_verify_fun app481==> tablet482Compiling 2 files (.ex)483Generated tablet app484==> confex485Compiling 6 files (.ex)486Generated confex app487==> module_config488Compiling 1 file (.ex)489Generated module_config app490==> elixir_make491Compiling 8 files (.ex)492Generated elixir_make app493==> nerves_logging494 CC kmsg_tailer.o495 LD kmsg_tailer496Compiling 5 files (.ex)497Generated nerves_logging app498==> gen_state_machine499Compiling 3 files (.ex)500    warning: using single-quoted strings to represent charlists is deprecated.501    Use ~c"" if you indeed want a charlist or use "" instead.502    You may run "mix format --migrate" to change all single-quoted503    strings to use the ~c sigil and fix this warning.504    │505 21 │       {'** State machine ~tp terminating~n' ++ _ = format, args} ->506    │        ~507    │508    └─ lib/gen_state_machine/translator.ex:21:8509510    warning: using single-quoted strings to represent charlists is deprecated.511    Use ~c"" if you indeed want a charlist or use "" instead.512    You may run "mix format --migrate" to change all single-quoted513    strings to use the ~c sigil and fix this warning.514    │515 24 │       {'** State machine ~p terminating~n' ++ _ = format, args} ->516    │        ~517    │518    └─ lib/gen_state_machine/translator.ex:24:8519520    warning: List.zip/1 is deprecated. Use Enum.zip/1 instead521    │522 62 │       |> List.zip()523    │               ~524    │525    └─ lib/gen_state_machine/translator.ex:62:15: GenStateMachine.Translator.do_translate/4526527Generated gen_state_machine app528==> swarm529Compiling 1 file (.erl)530Compiling 10 files (.ex)531    warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead532    │533 15 │   def warn(message), do: Logger.warn("[swarm on #{Node.self()}] #{message}")534    │                                 ~535    │536    └─ lib/swarm/logger.ex:15:33: Swarm.Logger.warn/1537538     warning: using single-quoted strings to represent charlists is deprecated.539     Use ~c"" if you indeed want a charlist or use "" instead.540     You may run "mix format --migrate" to change all single-quoted541     strings to use the ~c sigil and fix this warning.542     │543 238 │   defp stri(0), do: '0'544     │                     ~545     │546     └─ lib/swarm/tracker/crdt.ex:238:21547548     warning: using single-quoted strings to represent charlists is deprecated.549     Use ~c"" if you indeed want a charlist or use "" instead.550     You may run "mix format --migrate" to change all single-quoted551     strings to use the ~c sigil and fix this warning.552     │553 239 │   defp stri(1), do: ''554     │                     ~555     │556     └─ lib/swarm/tracker/crdt.ex:239:21557558     warning: using single-quoted strings to represent charlists is deprecated.559     Use ~c"" if you indeed want a charlist or use "" instead.560     You may run "mix format --migrate" to change all single-quoted561     strings to use the ~c sigil and fix this warning.562     │563 240 │   defp stri({0, i}), do: 'R' ++ stri(i)564     │                          ~565     │566     └─ lib/swarm/tracker/crdt.ex:240:26567568     warning: using single-quoted strings to represent charlists is deprecated.569     Use ~c"" if you indeed want a charlist or use "" instead.570     You may run "mix format --migrate" to change all single-quoted571     strings to use the ~c sigil and fix this warning.572     │573 241 │   defp stri({i, 0}), do: 'L' ++ stri(i)574     │                          ~575     │576     └─ lib/swarm/tracker/crdt.ex:241:26577578     warning: using single-quoted strings to represent charlists is deprecated.579     Use ~c"" if you indeed want a charlist or use "" instead.580     You may run "mix format --migrate" to change all single-quoted581     strings to use the ~c sigil and fix this warning.582     │583 242 │   defp stri({l, r}), do: ['(L' ++ stri(l), '+', 'R' ++ stri(r), ')']584     │                           ~585     │586     └─ lib/swarm/tracker/crdt.ex:242:27587588     warning: using single-quoted strings to represent charlists is deprecated.589     Use ~c"" if you indeed want a charlist or use "" instead.590     You may run "mix format --migrate" to change all single-quoted591     strings to use the ~c sigil and fix this warning.592     │593 242 │   defp stri({l, r}), do: ['(L' ++ stri(l), '+', 'R' ++ stri(r), ')']594     │                                            ~595     │596     └─ lib/swarm/tracker/crdt.ex:242:44597598     warning: using single-quoted strings to represent charlists is deprecated.599     Use ~c"" if you indeed want a charlist or use "" instead.600     You may run "mix format --migrate" to change all single-quoted601     strings to use the ~c sigil and fix this warning.602     │603 242 │   defp stri({l, r}), do: ['(L' ++ stri(l), '+', 'R' ++ stri(r), ')']604     │                                                 ~605     │606     └─ lib/swarm/tracker/crdt.ex:242:49607608     warning: using single-quoted strings to represent charlists is deprecated.609     Use ~c"" if you indeed want a charlist or use "" instead.610     You may run "mix format --migrate" to change all single-quoted611     strings to use the ~c sigil and fix this warning.612     │613 242 │   defp stri({l, r}), do: ['(L' ++ stri(l), '+', 'R' ++ stri(r), ')']614     │                                                                 ~615     │616     └─ lib/swarm/tracker/crdt.ex:242:65617618     warning: using single-quoted strings to represent charlists is deprecated.619     Use ~c"" if you indeed want a charlist or use "" instead.620     You may run "mix format --migrate" to change all single-quoted621     strings to use the ~c sigil and fix this warning.622     │623 244 │   defp stre({n, l, 0}), do: [stre(n), 'L', stre(l)]624     │                                       ~625     │626     └─ lib/swarm/tracker/crdt.ex:244:39627628     warning: using single-quoted strings to represent charlists is deprecated.629     Use ~c"" if you indeed want a charlist or use "" instead.630     You may run "mix format --migrate" to change all single-quoted631     strings to use the ~c sigil and fix this warning.632     │633 245 │   defp stre({n, 0, r}), do: [stre(n), 'R', stre(r)]634     │                                       ~635     │636     └─ lib/swarm/tracker/crdt.ex:245:39637638     warning: using single-quoted strings to represent charlists is deprecated.639     Use ~c"" if you indeed want a charlist or use "" instead.640     You may run "mix format --migrate" to change all single-quoted641     strings to use the ~c sigil and fix this warning.642     │643 246 │   defp stre({n, l, r}), do: [stre(n), '(L', stre(l), '+R', stre(r), ')']644     │                                       ~645     │646     └─ lib/swarm/tracker/crdt.ex:246:39647648     warning: using single-quoted strings to represent charlists is deprecated.649     Use ~c"" if you indeed want a charlist or use "" instead.650     You may run "mix format --migrate" to change all single-quoted651     strings to use the ~c sigil and fix this warning.652     │653 246 │   defp stre({n, l, r}), do: [stre(n), '(L', stre(l), '+R', stre(r), ')']654     │                                                      ~655     │656     └─ lib/swarm/tracker/crdt.ex:246:54657658     warning: using single-quoted strings to represent charlists is deprecated.659     Use ~c"" if you indeed want a charlist or use "" instead.660     You may run "mix format --migrate" to change all single-quoted661     strings to use the ~c sigil and fix this warning.662     │663 246 │   defp stre({n, l, r}), do: [stre(n), '(L', stre(l), '+R', stre(r), ')']664     │                                                                     ~665     │666     └─ lib/swarm/tracker/crdt.ex:246:69667668     warning: using single-quoted strings to represent charlists is deprecated.669     Use ~c"" if you indeed want a charlist or use "" instead.670     You may run "mix format --migrate" to change all single-quoted671     strings to use the ~c sigil and fix this warning.672     │673 248 │   defp stre(_), do: ''674     │                     ~675     │676     └─ lib/swarm/tracker/crdt.ex:248:21677678    warning: use Bitwise is deprecated. import Bitwise instead679    │680  7 │   use Bitwise681    │   ~~~~~~~~~~~682    │683    └─ lib/swarm/tracker/crdt.ex:7: Swarm.IntervalTreeClock (module)684685    warning: a struct for Swarm.Distribution.StaticQuorumRing is expected on struct update:686687        %Swarm.Distribution.StaticQuorumRing{quorum | ring: HashRing.add_node(quorum.ring, node)}688689    but got type:690691        dynamic()692693    where "quorum" was given the type:694695        # type: dynamic()696        # from: lib/swarm/distribution/static_quorum_ring.ex:64:16697        quorum698699    when defining the variable "quorum", you must also pattern match on "%Swarm.Distribution.StaticQuorumRing{}"700701    type warning found at:702    │703 65 │     %StaticQuorumRing{quorum | ring: HashRing.add_node(quorum.ring, node)}704    │     ~705    │706    └─ lib/swarm/distribution/static_quorum_ring.ex:65:5: Swarm.Distribution.StaticQuorumRing.add_node/2707708    warning: a struct for Swarm.Distribution.StaticQuorumRing is expected on struct update:709710        %Swarm.Distribution.StaticQuorumRing{quorum | ring: HashRing.add_node(quorum.ring, node, weight)}711712    but got type:713714        dynamic()715716    where "quorum" was given the type:717718        # type: dynamic()719        # from: lib/swarm/distribution/static_quorum_ring.ex:68:16720        quorum721722    when defining the variable "quorum", you must also pattern match on "%Swarm.Distribution.StaticQuorumRing{}"723724    type warning found at:725    │726 69 │     %StaticQuorumRing{quorum | ring: HashRing.add_node(quorum.ring, node, weight)}727    │     ~728    │729    └─ lib/swarm/distribution/static_quorum_ring.ex:69:5: Swarm.Distribution.StaticQuorumRing.add_node/3730731    warning: a struct for Swarm.Distribution.StaticQuorumRing is expected on struct update:732733        %Swarm.Distribution.StaticQuorumRing{quorum | ring: HashRing.add_nodes(quorum.ring, nodes)}734735    but got type:736737        dynamic()738739    where "quorum" was given the type:740741        # type: dynamic()742        # from: lib/swarm/distribution/static_quorum_ring.ex:72:17743        quorum744745    when defining the variable "quorum", you must also pattern match on "%Swarm.Distribution.StaticQuorumRing{}"746747    type warning found at:748    │749 73 │     %StaticQuorumRing{quorum | ring: HashRing.add_nodes(quorum.ring, nodes)}750    │     ~751    │752    └─ lib/swarm/distribution/static_quorum_ring.ex:73:5: Swarm.Distribution.StaticQuorumRing.add_nodes/2753754    warning: a struct for Swarm.Distribution.StaticQuorumRing is expected on struct update:755756        %Swarm.Distribution.StaticQuorumRing{quorum | ring: HashRing.remove_node(quorum.ring, node)}757758    but got type:759760        dynamic()761762    where "quorum" was given the type:763764        # type: dynamic()765        # from: lib/swarm/distribution/static_quorum_ring.ex:76:19766        quorum767768    when defining the variable "quorum", you must also pattern match on "%Swarm.Distribution.StaticQuorumRing{}"769770    type warning found at:771    │772 77 │     %StaticQuorumRing{quorum | ring: HashRing.remove_node(quorum.ring, node)}773    │     ~774    │775    └─ lib/swarm/distribution/static_quorum_ring.ex:77:5: Swarm.Distribution.StaticQuorumRing.remove_node/2776777    warning: Supervisor.Spec.supervisor/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead778    │779 11 │       supervisor(Task.Supervisor, [[name: Swarm.TaskSupervisor]]),780    │       ~781    │782    └─ lib/swarm/app.ex:11:7: Swarm.App.init/1783784    warning: Supervisor.Spec.worker/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead785    │786 12 │       worker(Swarm.Registry, []),787    │       ~788    │789    └─ lib/swarm/app.ex:12:7: Swarm.App.init/1790    └─ lib/swarm/app.ex:13:7: Swarm.App.init/1791792    warning: Supervisor.Spec.supervise/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead793    │794 16 │     supervise(children, strategy: :one_for_one)795    │     ~796    │797    └─ lib/swarm/app.ex:16:5: Swarm.App.init/1798799     warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead800     │801 828 │         error(Exception.format(kind, err, System.stacktrace()))802     │                                                  ~803     │804     └─ lib/swarm/tracker/tracker.ex:828:50: Swarm.Tracker.handle_handoff/3805     └─ lib/swarm/tracker/tracker.ex:1314:60: Swarm.Tracker.do_track/2806     └─ lib/swarm/tracker/tracker.ex:1408:50: Swarm.Tracker.start_pid_remotely/6807808      warning: this clause of defp handle_retry/3 is never used (or it will always fail/warn when invoked)809      │810 1235 │   defp handle_retry(_from, _event, _state) do811      │        ~812      │813      └─ lib/swarm/tracker/tracker.ex:1235:8: Swarm.Tracker.handle_retry/3814815Generated swarm app816==> nerves_discovery817Compiling 5 files (.ex)818Generated nerves_discovery app819==> ring_logger820Compiling 7 files (.ex)821Generated ring_logger app822==> decimal823Compiling 4 files (.ex)824      warning: this clause of defp check_dbl_min_max/1 is never used (or it will always fail/warn when invoked)825      │826 2842 │   defp check_dbl_min_max(%Decimal{coef: :inf} = infinity), do: infinity827      │        ~828      │829      └─ lib/decimal.ex:2842:8: Decimal.check_dbl_min_max/1830831Generated decimal app832==> interactive_cmd833Compiling 1 file (.ex)834Generated interactive_cmd app835==> nerves836Compiling 65 files (.ex)837    warning: redefining module Mix.Tasks.Nerves.Init (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Mix.Tasks.Nerves.Init.beam)838    │839  6 │ defmodule Mix.Tasks.Nerves.Init do840    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~841    │842    └─ lib/mix/tasks/nerves.init.ex:6: Mix.Tasks.Nerves.Init (module)843844    warning: redefining module Nerves (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.beam)845    │846  6 │ defmodule Nerves do847    │ ~~~~~~~~~~~~~~~~~~~848    │849    └─ lib/nerves.ex:6: Nerves (module)850851    warning: redefining module Nerves.ArtifactResolver (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.ArtifactResolver.beam)852    │853  5 │ defmodule Nerves.ArtifactResolver do854    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~855    │856    └─ lib/nerves/artifact_resolver.ex:5: Nerves.ArtifactResolver (module)857858    warning: redefining module Nerves.BuildAction.AppModes (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.AppModes.beam)859    │860  6 │ defmodule Nerves.BuildAction.AppModes do861    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~862    │863    └─ lib/nerves/build_action/app_modes.ex:6: Nerves.BuildAction.AppModes (module)864865    warning: redefining module Nerves.BuildAction.CheckExecutables (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.CheckExecutables.beam)866    │867  5 │ defmodule Nerves.BuildAction.CheckExecutables do868    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~869    │870    └─ lib/nerves/build_action/check_executables.ex:5: Nerves.BuildAction.CheckExecutables (module)871872    warning: redefining module Nerves.BuildAction.Erlinit (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.Erlinit.beam)873    │874  8 │ defmodule Nerves.BuildAction.Erlinit do875    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~876    │877    └─ lib/nerves/build_action/erlinit.ex:8: Nerves.BuildAction.Erlinit (module)878879    warning: redefining module Nerves.BuildAction.Firmware (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.Firmware.beam)880    │881  5 │ defmodule Nerves.BuildAction.Firmware do882    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~883    │884    └─ lib/nerves/build_action/firmware.ex:5: Nerves.BuildAction.Firmware (module)885886    warning: redefining module Nerves.BuildAction.IExStartupCheck (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.IExStartupCheck.beam)887    │888  7 │ defmodule Nerves.BuildAction.IExStartupCheck do889    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~890    │891    └─ lib/nerves/build_action/iex_startup_check.ex:7: Nerves.BuildAction.IExStartupCheck (module)892893    warning: redefining module Nerves.BuildAction.NervesV1System (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1System.beam)894    │895  5 │ defmodule Nerves.BuildAction.NervesV1System do896    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~897    │898    └─ lib/nerves/build_action/nerves_v1_system.ex:5: Nerves.BuildAction.NervesV1System (module)899900    warning: redefining module Nerves.BuildAction.NervesV1Toolchain (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1Toolchain.beam)901    │902  5 │ defmodule Nerves.BuildAction.NervesV1Toolchain do903    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~904    │905    └─ lib/nerves/build_action/nerves_v1_toolchain.ex:5: Nerves.BuildAction.NervesV1Toolchain (module)906907    warning: redefining module Nerves.BuildAction.Rootfs (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.Rootfs.beam)908    │909  5 │ defmodule Nerves.BuildAction.Rootfs do910    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~911    │912    └─ lib/nerves/build_action/rootfs.ex:5: Nerves.BuildAction.Rootfs (module)913914    warning: redefining module Nerves.BuildAction.SortApps (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.SortApps.beam)915    │916  6 │ defmodule Nerves.BuildAction.SortApps do917    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~918    │919    └─ lib/nerves/build_action/sort_apps.ex:6: Nerves.BuildAction.SortApps (module)920921    warning: redefining module Nerves.BuildAction.StripAll (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.StripAll.beam)922    │923  5 │ defmodule Nerves.BuildAction.StripAll do924    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~925    │926    └─ lib/nerves/build_action/strip_all.ex:5: Nerves.BuildAction.StripAll (module)927928    warning: redefining module Nerves.BuildAction.Trimmer (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildAction.Trimmer.beam)929    │930  5 │ defmodule Nerves.BuildAction.Trimmer do931    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~932    │933    └─ lib/nerves/build_action/trimmer.ex:5: Nerves.BuildAction.Trimmer (module)934935    warning: redefining module Nerves.BuildPlan (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildPlan.beam)936    │937  5 │ defmodule Nerves.BuildPlan do938    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~939    │940    └─ lib/nerves/build_plan.ex:5: Nerves.BuildPlan (module)941942    warning: redefining module Nerves.BuildPlan.Checks (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.BuildPlan.Checks.beam)943    │944  5 │ defmodule Nerves.BuildPlan.Checks do945    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~946    │947    └─ lib/nerves/build_plan/checks.ex:5: Nerves.BuildPlan.Checks (module)948949    warning: redefining module Nerves.Container (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.Container.beam)950    │951  6 │ defmodule Nerves.Container do952    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~953    │954    └─ lib/nerves/container.ex:6: Nerves.Container (module)955956    warning: redefining module Nerves.Fingerprint (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.Fingerprint.beam)957    │958  5 │ defmodule Nerves.Fingerprint do959    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~960    │961    └─ lib/nerves/fingerprint.ex:5: Nerves.Fingerprint (module)962963    warning: redefining module Nerves.MixPackage (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.MixPackage.beam)964    │965  5 │ defmodule Nerves.MixPackage do966    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~967    │968    └─ lib/nerves/mix_package.ex:5: Nerves.MixPackage (module)969970    warning: redefining module Nerves.Paths (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.Paths.beam)971    │972  5 │ defmodule Nerves.Paths do973    │ ~~~~~~~~~~~~~~~~~~~~~~~~~974    │975    └─ lib/nerves/paths.ex:5: Nerves.Paths (module)976977    warning: redefining module Nerves.TargetTuple (current version loaded from /work/proj/_build/mangopi_mq_pro/lib/nerves/ebin/Elixir.Nerves.TargetTuple.beam)978    │979  5 │ defmodule Nerves.TargetTuple do980    │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~981    │982    └─ lib/nerves/target_tuple.ex:5: Nerves.TargetTuple (module)983984Generated nerves app985==> nerves_toolchain_riscv64_nerves_linux_gnu986Compiling 1 file (.ex)987Generated nerves_toolchain_riscv64_nerves_linux_gnu app988==> nerves_system_mangopi_mq_pro989Generated nerves_system_mangopi_mq_pro app990==> nerves_compatibility_test991===> Analyzing applications...992===> Compiling unicode_util_compat993===> Analyzing applications...994===> Compiling idna995===> Analyzing applications...996===> Compiling telemetry997==> ecto998Compiling 56 files (.ex)999     warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.10001001     This error happens when you have function calls without parentheses inside keywords. For example:10021003         function(arg, one: nested_call a, b, c)1004         function(arg, one: if expr, do: :this, else: :that)10051006     In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:10071008         function(arg, one: if(expr, do: :this, else: :that))1009         function(arg, one: nested_call(a, b, c))10101011     Ambiguity found at:1012     │1013 445 │     do: raise ArgumentError,1014     │     ~~~~~~~~~~~~~~~~~~~~~~~~1015     │1016     └─ lib/ecto/association.ex:44510171018     warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1019     │1020 473 │       Logger.warn """1021     │              ~1022     │1023     └─ lib/ecto/changeset/relation.ex:473:14: Ecto.Changeset.Relation.process_current/310241025     warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.10261027     This error happens when you have function calls without parentheses inside keywords. For example:10281029         function(arg, one: nested_call a, b, c)1030         function(arg, one: if expr, do: :this, else: :that)10311032     In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:10331034         function(arg, one: if(expr, do: :this, else: :that))1035         function(arg, one: nested_call(a, b, c))10361037     Ambiguity found at:1038     │1039 575 │     do: raise ArgumentError, "cast/3 expects a list of atom keys, got key: `#{inspect key}`"1040     │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1041     │1042     └─ lib/ecto/changeset.ex:57510431044      warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.10451046      This error happens when you have function calls without parentheses inside keywords. For example:10471048          function(arg, one: nested_call a, b, c)1049          function(arg, one: if expr, do: :this, else: :that)10501051      In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:10521053          function(arg, one: if(expr, do: :this, else: :that))1054          function(arg, one: nested_call(a, b, c))10551056      Ambiguity found at:1057      │1058 2981 │     raise ArgumentError, "cannot add constraint to changeset because it does not have a source, got: #{inspect data}"1059      │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1060      │1061      └─ lib/ecto/changeset.ex:298110621063      warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.10641065      This error happens when you have function calls without parentheses inside keywords. For example:10661067          function(arg, one: nested_call a, b, c)1068          function(arg, one: if expr, do: :this, else: :that)10691070      In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:10711072          function(arg, one: if(expr, do: :this, else: :that))1073          function(arg, one: nested_call(a, b, c))10741075      Ambiguity found at:1076      │1077 2983 │     raise ArgumentError, "cannot add constraint because a changeset was not supplied, got: #{inspect item}"1078      │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1079      │1080      └─ lib/ecto/changeset.ex:2983108110821083== Compilation error in file lib/ecto/query.ex ==1084** (Kernel.TypespecError) lib/ecto/query.ex:430: type dynamic/0 is a built-in type and it cannot be redefined1085    (elixir 1.20.3) lib/kernel/typespec.ex:1002: Kernel.Typespec.compile_error/21086    (stdlib 8.1) lists.erl:2470: :lists.foldl_1/31087    (elixir 1.20.3) lib/kernel/typespec.ex:230: Kernel.Typespec.translate_typespecs_for_module/21088could not compile dependency :ecto, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile ecto --force", update it with "mix deps.update ecto" or clean it with "mix deps.clean ecto"