Build log
nerves_system_x86_64
guard 0.19.1 · fail · run guard-0.19.1-1791192619894
1214 of 1214 lines
1Resolving Hex dependencies...2Resolution completed in 0.384s3Unchanged:4 bamboo 1.3.05 bcrypt_elixir 2.0.36 certifi 2.15.07 circular_buffer 1.1.08 comeonin 5.1.39 cowboy 2.19.010 cowboy_telemetry 0.3.111 cowlib 2.20.0 VULNERABLE!12 EEF-CVE-2026-43966 (MEDIUM)13 aka: CVE-2026-43966, GHSA-w4f7-4cxr-rv3c14 HTTP Response Splitting via Non-VCHAR Bytes in cow_http_struct_hd:escape_string/215 https://osv.dev/vulnerability/EEF-CVE-2026-439661617 EEF-CVE-2026-43969 (LOW)18 aka: CVE-2026-43969, GHSA-g2wm-735q-3f5619 Cookie Request Header Injection via Unvalidated Encoder in cow_cookie:cookie/120 https://osv.dev/vulnerability/EEF-CVE-2026-4396921 decimal 1.9.0 VULNERABLE!22 EEF-CVE-2026-32686 (MEDIUM)23 aka: CVE-2026-32686, GHSA-rhv4-8758-jx7v24 Unbounded exponent in decimal enables unauthenticated DoS25 https://osv.dev/vulnerability/EEF-CVE-2026-3268626 ecto 3.10.327 elixir_make 0.10.028 expo 1.1.129 gettext 0.26.230 guard 0.19.131 guardian 1.2.1 VULNERABLE!32 EEF-CVE-2026-54894 (MEDIUM)33 aka: CVE-2026-54894, GHSA-xqch-c77q-rgh534 Atom-table exhaustion denial of service in Guardian via unbounded atom creation from binary keys35 https://osv.dev/vulnerability/EEF-CVE-2026-548943637 EEF-CVE-2026-55735 (HIGH)38 aka: CVE-2026-55735, GHSA-7975-hp3r-5qhv39 Guardian.revoke/3 acts on unverified token claims, allowing forged-token session revocation40 https://osv.dev/vulnerability/EEF-CVE-2026-5573541 hackney 1.25.0 VULNERABLE!42 EEF-CVE-2026-47071 (HIGH)43 aka: CVE-2026-47071, GHSA-gp9c-pm5m-5cxr44 SOCKS5 TLS upgrade ignores caller timeout in hackney45 https://osv.dev/vulnerability/EEF-CVE-2026-470714647 EEF-CVE-2026-47076 (MEDIUM)48 aka: CVE-2026-47076, GHSA-pj7v-xfvx-wmjq49 SSRF allowlist bypass via percent-encoded host in hackney50 https://osv.dev/vulnerability/EEF-CVE-2026-470765152 EEF-CVE-2026-47069 (LOW)53 aka: CVE-2026-47069, GHSA-mp55-p8c9-rfw254 CRLF injection in cookie domain/path options in hackney55 https://osv.dev/vulnerability/EEF-CVE-2026-470695657 EEF-CVE-2026-47075 (MEDIUM)58 aka: CVE-2026-47075, GHSA-j9wq-vxxc-94wf59 CR/LF injection in query parameter in hackney60 https://osv.dev/vulnerability/EEF-CVE-2026-4707561 idna 6.1.162 interactive_cmd 0.1.463 jason 1.1.264 jose 1.11.1265 metrics 1.0.166 mime 1.6.067 mimerl 1.5.068 nerves 2.0.0-pre.269 nerves_discovery 0.1.570 nerves_logging 0.2.471 nerves_runtime 0.13.1372 nerves_system_bbb 2.30.273 nerves_system_br 1.34.474 nerves_system_mangopi_mq_pro 0.17.275 nerves_system_qemu_aarch64 0.4.276 nerves_system_rpi0 2.1.277 nerves_system_rpi4 2.1.278 nerves_system_rpi5 2.1.279 nerves_system_trellis 0.5.080 nerves_system_x86_64 1.34.281 nerves_toolchain_aarch64_nerves_linux_gnu 15.3.182 nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.183 nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.184 nerves_toolchain_riscv64_nerves_linux_gnu 15.3.185 nerves_toolchain_x86_64_nerves_linux_musl 15.3.186 nerves_uevent 0.1.787 parse_trans 3.4.188 phoenix 1.8.1589 phoenix_pubsub 2.3.090 phoenix_template 1.1.091 plug 1.20.392 plug_cowboy 2.9.093 plug_crypto 2.2.094 property_table 0.3.495 ranch 2.3.096 ring_logger 0.11.797 ssl_verify_fun 1.1.798 tablet 0.3.399 telemetry 0.4.3100 tesla 1.3.3 VULNERABLE!101 EEF-CVE-2026-48597 (HIGH)102 aka: CVE-2026-48597, GHSA-h74c-q9j7-mpcm103 Atom table exhaustion via untrusted URL scheme in Tesla.Adapter.Mint104 https://osv.dev/vulnerability/EEF-CVE-2026-48597105106 EEF-CVE-2026-48596 (LOW)107 aka: CVE-2026-48596, GHSA-q7jx-v53g-848w108 CRLF injection in Tesla.Multipart.add_content_type_param/2 allows HTTP header injection109 https://osv.dev/vulnerability/EEF-CVE-2026-48596110111 EEF-CVE-2026-48598 (LOW)112 aka: CVE-2026-48598, GHSA-28jh-g32x-v9v4113 CRLF injection in Tesla.Multipart disposition parameters allows multipart part header injection114 https://osv.dev/vulnerability/EEF-CVE-2026-48598115116 EEF-CVE-2026-48594 (HIGH)117 aka: CVE-2026-48594, GHSA-mc85-72gr-vm9f118 Decompression bomb in Tesla.Middleware.DecompressResponse and Tesla.Middleware.Compression119 https://osv.dev/vulnerability/EEF-CVE-2026-48594120121 GHSA-9m9w-gxf7-rh8m (HIGH)122 aka: CVE-2026-48595, EEF-CVE-2026-48595123 Tesla: Authorization header leaks on cross-origin redirect via case-sensitive filtering124 https://osv.dev/vulnerability/GHSA-9m9w-gxf7-rh8m125 toolshed 0.5.0126 uboot_env 1.0.2127 unicode_util_compat 0.7.1128 websock 0.5.3129 websock_adapter 0.6.0130* Getting guard (Hex package)131* Getting nerves (Hex package)132* Getting ring_logger (Hex package)133* Getting toolshed (Hex package)134* Getting nerves_runtime (Hex package)135* Getting nerves_system_bbb (Hex package)136* Getting nerves_system_mangopi_mq_pro (Hex package)137* Getting nerves_system_qemu_aarch64 (Hex package)138* Getting nerves_system_rpi0 (Hex package)139* Getting nerves_system_rpi4 (Hex package)140* Getting nerves_system_rpi5 (Hex package)141* Getting nerves_system_trellis (Hex package)142* Getting nerves_system_x86_64 (Hex package)143* Getting nerves_system_br (Hex package)144* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)145* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)146* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)147* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)148* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)149* Getting nerves_logging (Hex package)150* Getting nerves_uevent (Hex package)151* Getting uboot_env (Hex package)152* Getting elixir_make (Hex package)153* Getting property_table (Hex package)154* Getting circular_buffer (Hex package)155* Getting interactive_cmd (Hex package)156* Getting nerves_discovery (Hex package)157* Getting tablet (Hex package)158* Getting bamboo (Hex package)159* Getting bcrypt_elixir (Hex package)160* Getting comeonin (Hex package)161* Getting ecto (Hex package)162* Getting gettext (Hex package)163* Getting guardian (Hex package)164* Getting jason (Hex package)165* Getting phoenix (Hex package)166* Getting plug_cowboy (Hex package)167* Getting tesla (Hex package)168* Getting mime (Hex package)169* Getting cowboy (Hex package)170* Getting cowboy_telemetry (Hex package)171* Getting plug (Hex package)172* Getting plug_crypto (Hex package)173* Getting telemetry (Hex package)174* Getting cowlib (Hex package)175* Getting ranch (Hex package)176* Getting phoenix_pubsub (Hex package)177* Getting phoenix_template (Hex package)178* Getting websock_adapter (Hex package)179* Getting websock (Hex package)180* Getting jose (Hex package)181* Getting expo (Hex package)182* Getting decimal (Hex package)183* Getting hackney (Hex package)184* Getting certifi (Hex package)185* Getting idna (Hex package)186* Getting metrics (Hex package)187* Getting mimerl (Hex package)188* Getting parse_trans (Hex package)189* Getting ssl_verify_fun (Hex package)190* Getting unicode_util_compat (Hex package)191Found packages with security advisories, see above for details192You have added/upgraded packages you could sponsor, run `mix hex.sponsor` to learn more193==> comeonin194Compiling 4 files (.ex)195Generated comeonin app196==> bcrypt_elixir197mkdir -p priv198/home/nerves/.nerves/artifacts/nerves_toolchain_x86_64_nerves_linux_musl-15.3.1/bin/x86_64-nerves-linux-musl-gcc -g -O3 -Wall -Wno-format-truncation -I"/usr/local/lib/erlang/erts-17.1/include" -Ic_src -fPIC -shared --sysroot=/home/nerves/.nerves/artifacts/nerves_system_x86_64-1.34.2/staging c_src/bcrypt_nif.c c_src/blowfish.c -o priv/bcrypt_nif.so199Compiling 3 files (.ex)200 warning: using single-quoted strings to represent charlists is deprecated.201 Use ~c"" if you indeed want a charlist or use "" instead.202 You may run "mix format --migrate" to change all single-quoted203 strings to use the ~c sigil and fix this warning.204 │205 57 │ path = :filename.join(:code.priv_dir(:bcrypt_elixir), 'bcrypt_nif')206 │ ~207 │208 └─ lib/bcrypt/base.ex:57:59209210 warning: use Bitwise is deprecated. import Bitwise instead211 │212 6 │ use Bitwise213 │ ~~~~~~~~~~~214 │215 └─ lib/bcrypt/base.ex:6: Bcrypt.Base (module)216217Generated bcrypt_elixir app218==> jason219Compiling 8 files (.ex)220 warning: using single-quoted strings to represent charlists is deprecated.221 Use ~c"" if you indeed want a charlist or use "" instead.222 You may run "mix format --migrate" to change all single-quoted223 strings to use the ~c sigil and fix this warning.224 │225 51 │ collapse_static(List.flatten(["{", elements] ++ '}'))226 │ ~227 │228 └─ lib/codegen.ex:51:53229230 warning: using single-quoted strings to represent charlists is deprecated.231 Use ~c"" if you indeed want a charlist or use "" instead.232 You may run "mix format --migrate" to change all single-quoted233 strings to use the ~c sigil and fix this warning.234 │235 138 │ if byte > 0x7F or byte < 0x1F or byte in '"\\/' do236 │ ~237 │238 └─ lib/codegen.ex:138:48239240 warning: using single-quoted strings to represent charlists is deprecated.241 Use ~c"" if you indeed want a charlist or use "" instead.242 You may run "mix format --migrate" to change all single-quoted243 strings to use the ~c sigil and fix this warning.244 │245 69 │ _ in '\s\n\t\r', rest ->246 │ ~247 │248 └─ lib/decoder.ex:69:12249250 warning: using single-quoted strings to represent charlists is deprecated.251 Use ~c"" if you indeed want a charlist or use "" instead.252 You may run "mix format --migrate" to change all single-quoted253 strings to use the ~c sigil and fix this warning.254 │255 71 │ _ in '0', rest ->256 │ ~257 │258 └─ lib/decoder.ex:71:12259260 warning: using single-quoted strings to represent charlists is deprecated.261 Use ~c"" if you indeed want a charlist or use "" instead.262 You may run "mix format --migrate" to change all single-quoted263 strings to use the ~c sigil and fix this warning.264 │265 73 │ _ in '123456789', rest ->266 │ ~267 │268 └─ lib/decoder.ex:73:12269270 warning: using single-quoted strings to represent charlists is deprecated.271 Use ~c"" if you indeed want a charlist or use "" instead.272 You may run "mix format --migrate" to change all single-quoted273 strings to use the ~c sigil and fix this warning.274 │275 75 │ _ in '-', rest ->276 │ ~277 │278 └─ lib/decoder.ex:75:12279280 warning: using single-quoted strings to represent charlists is deprecated.281 Use ~c"" if you indeed want a charlist or use "" instead.282 You may run "mix format --migrate" to change all single-quoted283 strings to use the ~c sigil and fix this warning.284 │285 77 │ _ in '"', rest ->286 │ ~287 │288 └─ lib/decoder.ex:77:12289290 warning: using single-quoted strings to represent charlists is deprecated.291 Use ~c"" if you indeed want a charlist or use "" instead.292 You may run "mix format --migrate" to change all single-quoted293 strings to use the ~c sigil and fix this warning.294 │295 79 │ _ in '[', rest ->296 │ ~297 │298 └─ lib/decoder.ex:79:12299300 warning: using single-quoted strings to represent charlists is deprecated.301 Use ~c"" if you indeed want a charlist or use "" instead.302 You may run "mix format --migrate" to change all single-quoted303 strings to use the ~c sigil and fix this warning.304 │305 81 │ _ in '{', rest ->306 │ ~307 │308 └─ lib/decoder.ex:81:12309310 warning: using single-quoted strings to represent charlists is deprecated.311 Use ~c"" if you indeed want a charlist or use "" instead.312 You may run "mix format --migrate" to change all single-quoted313 strings to use the ~c sigil and fix this warning.314 │315 83 │ _ in ']', rest ->316 │ ~317 │318 └─ lib/decoder.ex:83:12319320 warning: using single-quoted strings to represent charlists is deprecated.321 Use ~c"" if you indeed want a charlist or use "" instead.322 You may run "mix format --migrate" to change all single-quoted323 strings to use the ~c sigil and fix this warning.324 │325 85 │ _ in 't', rest ->326 │ ~327 │328 └─ lib/decoder.ex:85:12329330 warning: using single-quoted strings to represent charlists is deprecated.331 Use ~c"" if you indeed want a charlist or use "" instead.332 You may run "mix format --migrate" to change all single-quoted333 strings to use the ~c sigil and fix this warning.334 │335 92 │ _ in 'f', rest ->336 │ ~337 │338 └─ lib/decoder.ex:92:12339340 warning: using single-quoted strings to represent charlists is deprecated.341 Use ~c"" if you indeed want a charlist or use "" instead.342 You may run "mix format --migrate" to change all single-quoted343 strings to use the ~c sigil and fix this warning.344 │345 99 │ _ in 'n', rest ->346 │ ~347 │348 └─ lib/decoder.ex:99:12349350 warning: using single-quoted strings to represent charlists is deprecated.351 Use ~c"" if you indeed want a charlist or use "" instead.352 You may run "mix format --migrate" to change all single-quoted353 strings to use the ~c sigil and fix this warning.354 │355 117 │ when byte in '123456789' do356 │ ~357 │358 └─ lib/decoder.ex:117:21359360 warning: using single-quoted strings to represent charlists is deprecated.361 Use ~c"" if you indeed want a charlist or use "" instead.362 You may run "mix format --migrate" to change all single-quoted363 strings to use the ~c sigil and fix this warning.364 │365 125 │ when byte in '0123456789' do366 │ ~367 │368 └─ lib/decoder.ex:125:21369370 warning: using single-quoted strings to represent charlists is deprecated.371 Use ~c"" if you indeed want a charlist or use "" instead.372 You may run "mix format --migrate" to change all single-quoted373 strings to use the ~c sigil and fix this warning.374 │375 131 │ defp number(<<e, rest::bits>>, original, skip, stack, key_decode, string_decode, len) when e in 'eE' do376 │ ~377 │378 └─ lib/decoder.ex:131:99379380 warning: using single-quoted strings to represent charlists is deprecated.381 Use ~c"" if you indeed want a charlist or use "" instead.382 You may run "mix format --migrate" to change all single-quoted383 strings to use the ~c sigil and fix this warning.384 │385 141 │ when byte in '0123456789' do386 │ ~387 │388 └─ lib/decoder.ex:141:21389390 warning: using single-quoted strings to represent charlists is deprecated.391 Use ~c"" if you indeed want a charlist or use "" instead.392 You may run "mix format --migrate" to change all single-quoted393 strings to use the ~c sigil and fix this warning.394 │395 149 │ when byte in '0123456789' do396 │ ~397 │398 └─ lib/decoder.ex:149:21399400 warning: using single-quoted strings to represent charlists is deprecated.401 Use ~c"" if you indeed want a charlist or use "" instead.402 You may run "mix format --migrate" to change all single-quoted403 strings to use the ~c sigil and fix this warning.404 │405 153 │ when e in 'eE' do406 │ ~407 │408 └─ lib/decoder.ex:153:18409410 warning: using single-quoted strings to represent charlists is deprecated.411 Use ~c"" if you indeed want a charlist or use "" instead.412 You may run "mix format --migrate" to change all single-quoted413 strings to use the ~c sigil and fix this warning.414 │415 163 │ when byte in '0123456789' do416 │ ~417 │418 └─ lib/decoder.ex:163:21419420 warning: using single-quoted strings to represent charlists is deprecated.421 Use ~c"" if you indeed want a charlist or use "" instead.422 You may run "mix format --migrate" to change all single-quoted423 strings to use the ~c sigil and fix this warning.424 │425 167 │ when byte in '+-' do426 │ ~427 │428 └─ lib/decoder.ex:167:21429430 warning: using single-quoted strings to represent charlists is deprecated.431 Use ~c"" if you indeed want a charlist or use "" instead.432 You may run "mix format --migrate" to change all single-quoted433 strings to use the ~c sigil and fix this warning.434 │435 175 │ when byte in '0123456789' do436 │ ~437 │438 └─ lib/decoder.ex:175:21439440 warning: using single-quoted strings to represent charlists is deprecated.441 Use ~c"" if you indeed want a charlist or use "" instead.442 You may run "mix format --migrate" to change all single-quoted443 strings to use the ~c sigil and fix this warning.444 │445 183 │ when byte in '0123456789' do446 │ ~447 │448 └─ lib/decoder.ex:183:21449450 warning: using single-quoted strings to represent charlists is deprecated.451 Use ~c"" if you indeed want a charlist or use "" instead.452 You may run "mix format --migrate" to change all single-quoted453 strings to use the ~c sigil and fix this warning.454 │455 193 │ when byte in '0123456789' do456 │ ~457 │458 └─ lib/decoder.ex:193:21459460 warning: using single-quoted strings to represent charlists is deprecated.461 Use ~c"" if you indeed want a charlist or use "" instead.462 You may run "mix format --migrate" to change all single-quoted463 strings to use the ~c sigil and fix this warning.464 │465 197 │ when byte in '+-' do466 │ ~467 │468 └─ lib/decoder.ex:197:21469470 warning: using single-quoted strings to represent charlists is deprecated.471 Use ~c"" if you indeed want a charlist or use "" instead.472 You may run "mix format --migrate" to change all single-quoted473 strings to use the ~c sigil and fix this warning.474 │475 205 │ when byte in '0123456789' do476 │ ~477 │478 └─ lib/decoder.ex:205:21479480 warning: using single-quoted strings to represent charlists is deprecated.481 Use ~c"" if you indeed want a charlist or use "" instead.482 You may run "mix format --migrate" to change all single-quoted483 strings to use the ~c sigil and fix this warning.484 │485 213 │ when byte in '0123456789' do486 │ ~487 │488 └─ lib/decoder.ex:213:21489490 warning: using single-quoted strings to represent charlists is deprecated.491 Use ~c"" if you indeed want a charlist or use "" instead.492 You may run "mix format --migrate" to change all single-quoted493 strings to use the ~c sigil and fix this warning.494 │495 230 │ defp number_zero(<<e, rest::bits>>, original, skip, stack, key_decode, string_decode, len) when e in 'eE' do496 │ ~497 │498 └─ lib/decoder.ex:230:104499500 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 254 │ _ in '\s\n\t\r', rest ->506 │ ~507 │508 └─ lib/decoder.ex:254:12509510 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 256 │ _ in ']', rest ->516 │ ~517 │518 └─ lib/decoder.ex:256:12519520 warning: using single-quoted strings to represent charlists is deprecated.521 Use ~c"" if you indeed want a charlist or use "" instead.522 You may run "mix format --migrate" to change all single-quoted523 strings to use the ~c sigil and fix this warning.524 │525 260 │ _ in ',', rest ->526 │ ~527 │528 └─ lib/decoder.ex:260:12529530 warning: using single-quoted strings to represent charlists is deprecated.531 Use ~c"" if you indeed want a charlist or use "" instead.532 You may run "mix format --migrate" to change all single-quoted533 strings to use the ~c sigil and fix this warning.534 │535 278 │ _ in '\s\n\t\r', rest ->536 │ ~537 │538 └─ lib/decoder.ex:278:12539540 warning: using single-quoted strings to represent charlists is deprecated.541 Use ~c"" if you indeed want a charlist or use "" instead.542 You may run "mix format --migrate" to change all single-quoted543 strings to use the ~c sigil and fix this warning.544 │545 280 │ _ in '}', rest ->546 │ ~547 │548 └─ lib/decoder.ex:280:12549550 warning: using single-quoted strings to represent charlists is deprecated.551 Use ~c"" if you indeed want a charlist or use "" instead.552 You may run "mix format --migrate" to change all single-quoted553 strings to use the ~c sigil and fix this warning.554 │555 285 │ _ in ',', rest ->556 │ ~557 │558 └─ lib/decoder.ex:285:12559560 warning: using single-quoted strings to represent charlists is deprecated.561 Use ~c"" if you indeed want a charlist or use "" instead.562 You may run "mix format --migrate" to change all single-quoted563 strings to use the ~c sigil and fix this warning.564 │565 299 │ _ in '\s\n\t\r', rest ->566 │ ~567 │568 └─ lib/decoder.ex:299:12569570 warning: using single-quoted strings to represent charlists is deprecated.571 Use ~c"" if you indeed want a charlist or use "" instead.572 You may run "mix format --migrate" to change all single-quoted573 strings to use the ~c sigil and fix this warning.574 │575 301 │ _ in '}', rest ->576 │ ~577 │578 └─ lib/decoder.ex:301:12579580 warning: using single-quoted strings to represent charlists is deprecated.581 Use ~c"" if you indeed want a charlist or use "" instead.582 You may run "mix format --migrate" to change all single-quoted583 strings to use the ~c sigil and fix this warning.584 │585 308 │ _ in '"', rest ->586 │ ~587 │588 └─ lib/decoder.ex:308:12589590 warning: using single-quoted strings to represent charlists is deprecated.591 Use ~c"" if you indeed want a charlist or use "" instead.592 You may run "mix format --migrate" to change all single-quoted593 strings to use the ~c sigil and fix this warning.594 │595 319 │ _ in '\s\n\t\r', rest ->596 │ ~597 │598 └─ lib/decoder.ex:319:12599600 warning: using single-quoted strings to represent charlists is deprecated.601 Use ~c"" if you indeed want a charlist or use "" instead.602 You may run "mix format --migrate" to change all single-quoted603 strings to use the ~c sigil and fix this warning.604 │605 321 │ _ in ':', rest ->606 │ ~607 │608 └─ lib/decoder.ex:321:12609610 warning: using single-quoted strings to represent charlists is deprecated.611 Use ~c"" if you indeed want a charlist or use "" instead.612 You may run "mix format --migrate" to change all single-quoted613 strings to use the ~c sigil and fix this warning.614 │615 335 │ _ in '"', rest ->616 │ ~617 │618 └─ lib/decoder.ex:335:12619620 warning: using single-quoted strings to represent charlists is deprecated.621 Use ~c"" if you indeed want a charlist or use "" instead.622 You may run "mix format --migrate" to change all single-quoted623 strings to use the ~c sigil and fix this warning.624 │625 338 │ _ in '\\', rest ->626 │ ~627 │628 └─ lib/decoder.ex:338:12629630 warning: using single-quoted strings to represent charlists is deprecated.631 Use ~c"" if you indeed want a charlist or use "" instead.632 You may run "mix format --migrate" to change all single-quoted633 strings to use the ~c sigil and fix this warning.634 │635 358 │ _ in '"', rest ->636 │ ~637 │638 └─ lib/decoder.ex:358:12639640 warning: using single-quoted strings to represent charlists is deprecated.641 Use ~c"" if you indeed want a charlist or use "" instead.642 You may run "mix format --migrate" to change all single-quoted643 strings to use the ~c sigil and fix this warning.644 │645 362 │ _ in '\\', rest ->646 │ ~647 │648 └─ lib/decoder.ex:362:12649650 warning: using single-quoted strings to represent charlists is deprecated.651 Use ~c"" if you indeed want a charlist or use "" instead.652 You may run "mix format --migrate" to change all single-quoted653 strings to use the ~c sigil and fix this warning.654 │655 382 │ _ in 'b', rest ->656 │ ~657 │658 └─ lib/decoder.ex:382:12659660 warning: using single-quoted strings to represent charlists is deprecated.661 Use ~c"" if you indeed want a charlist or use "" instead.662 You may run "mix format --migrate" to change all single-quoted663 strings to use the ~c sigil and fix this warning.664 │665 383 │ string(rest, original, skip + 2, stack, key_decode, string_decode, [acc | '\b'], 0)666 │ ~667 │668 └─ lib/decoder.ex:383:83669670 warning: using single-quoted strings to represent charlists is deprecated.671 Use ~c"" if you indeed want a charlist or use "" instead.672 You may run "mix format --migrate" to change all single-quoted673 strings to use the ~c sigil and fix this warning.674 │675 384 │ _ in 't', rest ->676 │ ~677 │678 └─ lib/decoder.ex:384:12679680 warning: using single-quoted strings to represent charlists is deprecated.681 Use ~c"" if you indeed want a charlist or use "" instead.682 You may run "mix format --migrate" to change all single-quoted683 strings to use the ~c sigil and fix this warning.684 │685 385 │ string(rest, original, skip + 2, stack, key_decode, string_decode, [acc | '\t'], 0)686 │ ~687 │688 └─ lib/decoder.ex:385:83689690 warning: using single-quoted strings to represent charlists is deprecated.691 Use ~c"" if you indeed want a charlist or use "" instead.692 You may run "mix format --migrate" to change all single-quoted693 strings to use the ~c sigil and fix this warning.694 │695 386 │ _ in 'n', rest ->696 │ ~697 │698 └─ lib/decoder.ex:386:12699700 warning: using single-quoted strings to represent charlists is deprecated.701 Use ~c"" if you indeed want a charlist or use "" instead.702 You may run "mix format --migrate" to change all single-quoted703 strings to use the ~c sigil and fix this warning.704 │705 387 │ string(rest, original, skip + 2, stack, key_decode, string_decode, [acc | '\n'], 0)706 │ ~707 │708 └─ lib/decoder.ex:387:83709710 warning: using single-quoted strings to represent charlists is deprecated.711 Use ~c"" if you indeed want a charlist or use "" instead.712 You may run "mix format --migrate" to change all single-quoted713 strings to use the ~c sigil and fix this warning.714 │715 388 │ _ in 'f', rest ->716 │ ~717 │718 └─ lib/decoder.ex:388:12719720 warning: using single-quoted strings to represent charlists is deprecated.721 Use ~c"" if you indeed want a charlist or use "" instead.722 You may run "mix format --migrate" to change all single-quoted723 strings to use the ~c sigil and fix this warning.724 │725 389 │ string(rest, original, skip + 2, stack, key_decode, string_decode, [acc | '\f'], 0)726 │ ~727 │728 └─ lib/decoder.ex:389:83729730 warning: using single-quoted strings to represent charlists is deprecated.731 Use ~c"" if you indeed want a charlist or use "" instead.732 You may run "mix format --migrate" to change all single-quoted733 strings to use the ~c sigil and fix this warning.734 │735 390 │ _ in 'r', rest ->736 │ ~737 │738 └─ lib/decoder.ex:390:12739740 warning: using single-quoted strings to represent charlists is deprecated.741 Use ~c"" if you indeed want a charlist or use "" instead.742 You may run "mix format --migrate" to change all single-quoted743 strings to use the ~c sigil and fix this warning.744 │745 391 │ string(rest, original, skip + 2, stack, key_decode, string_decode, [acc | '\r'], 0)746 │ ~747 │748 └─ lib/decoder.ex:391:83749750 warning: using single-quoted strings to represent charlists is deprecated.751 Use ~c"" if you indeed want a charlist or use "" instead.752 You may run "mix format --migrate" to change all single-quoted753 strings to use the ~c sigil and fix this warning.754 │755 392 │ _ in '"', rest ->756 │ ~757 │758 └─ lib/decoder.ex:392:12759760 warning: using single-quoted strings to represent charlists is deprecated.761 Use ~c"" if you indeed want a charlist or use "" instead.762 You may run "mix format --migrate" to change all single-quoted763 strings to use the ~c sigil and fix this warning.764 │765 393 │ string(rest, original, skip + 2, stack, key_decode, string_decode, [acc | '\"'], 0)766 │ ~767 │768 └─ lib/decoder.ex:393:83769770 warning: using single-quoted strings to represent charlists is deprecated.771 Use ~c"" if you indeed want a charlist or use "" instead.772 You may run "mix format --migrate" to change all single-quoted773 strings to use the ~c sigil and fix this warning.774 │775 394 │ _ in '/', rest ->776 │ ~777 │778 └─ lib/decoder.ex:394:12779780 warning: using single-quoted strings to represent charlists is deprecated.781 Use ~c"" if you indeed want a charlist or use "" instead.782 You may run "mix format --migrate" to change all single-quoted783 strings to use the ~c sigil and fix this warning.784 │785 395 │ string(rest, original, skip + 2, stack, key_decode, string_decode, [acc | '/'], 0)786 │ ~787 │788 └─ lib/decoder.ex:395:83789790 warning: using single-quoted strings to represent charlists is deprecated.791 Use ~c"" if you indeed want a charlist or use "" instead.792 You may run "mix format --migrate" to change all single-quoted793 strings to use the ~c sigil and fix this warning.794 │795 396 │ _ in '\\', rest ->796 │ ~797 │798 └─ lib/decoder.ex:396:12799800 warning: using single-quoted strings to represent charlists is deprecated.801 Use ~c"" if you indeed want a charlist or use "" instead.802 You may run "mix format --migrate" to change all single-quoted803 strings to use the ~c sigil and fix this warning.804 │805 397 │ string(rest, original, skip + 2, stack, key_decode, string_decode, [acc | '\\'], 0)806 │ ~807 │808 └─ lib/decoder.ex:397:83809810 warning: using single-quoted strings to represent charlists is deprecated.811 Use ~c"" if you indeed want a charlist or use "" instead.812 You may run "mix format --migrate" to change all single-quoted813 strings to use the ~c sigil and fix this warning.814 │815 398 │ _ in 'u', rest ->816 │ ~817 │818 └─ lib/decoder.ex:398:12819820 warning: using single-quoted strings to represent charlists is deprecated.821 Use ~c"" if you indeed want a charlist or use "" instead.822 You may run "mix format --migrate" to change all single-quoted823 strings to use the ~c sigil and fix this warning.824 │825 555 │ digits1 = 'Dd'826 │ ~827 │828 └─ lib/decoder.ex:555:17829830 warning: using single-quoted strings to represent charlists is deprecated.831 Use ~c"" if you indeed want a charlist or use "" instead.832 You may run "mix format --migrate" to change all single-quoted833 strings to use the ~c sigil and fix this warning.834 │835 648 │ when byte in '\s\n\r\t' do836 │ ~837 │838 └─ lib/decoder.ex:648:21839840 warning: using single-quoted strings to represent charlists is deprecated.841 Use ~c"" if you indeed want a charlist or use "" instead.842 You may run "mix format --migrate" to change all single-quoted843 strings to use the ~c sigil and fix this warning.844 │845 145 │ ']'846 │ ~847 │848 └─ lib/encode.ex:145:5849850 warning: using single-quoted strings to represent charlists is deprecated.851 Use ~c"" if you indeed want a charlist or use "" instead.852 You may run "mix format --migrate" to change all single-quoted853 strings to use the ~c sigil and fix this warning.854 │855 169 │ '}'856 │ ~857 │858 └─ lib/encode.ex:169:5859860 warning: using single-quoted strings to represent charlists is deprecated.861 Use ~c"" if you indeed want a charlist or use "" instead.862 You may run "mix format --migrate" to change all single-quoted863 strings to use the ~c sigil and fix this warning.864 │865 191 │ '}'866 │ ~867 │868 └─ lib/encode.ex:191:5869870 warning: using single-quoted strings to represent charlists is deprecated.871 Use ~c"" if you indeed want a charlist or use "" instead.872 You may run "mix format --migrate" to change all single-quoted873 strings to use the ~c sigil and fix this warning.874 │875 257 │ slash_escapes = Enum.zip('\b\t\n\f\r\"\\', 'btnfr"\\')876 │ ~877 │878 └─ lib/encode.ex:257:28879880 warning: using single-quoted strings to represent charlists is deprecated.881 Use ~c"" if you indeed want a charlist or use "" instead.882 You may run "mix format --migrate" to change all single-quoted883 strings to use the ~c sigil and fix this warning.884 │885 257 │ slash_escapes = Enum.zip('\b\t\n\f\r\"\\', 'btnfr"\\')886 │ ~887 │888 └─ lib/encode.ex:257:46889890 warning: using single-quoted strings to represent charlists is deprecated.891 Use ~c"" if you indeed want a charlist or use "" instead.892 You may run "mix format --migrate" to change all single-quoted893 strings to use the ~c sigil and fix this warning.894 │895 164 │ defp pp_byte(byte, rest, output, depth, empty, opts) when byte in ' \n\r\t' do896 │ ~897 │898 └─ lib/formatter.ex:164:69899900 warning: using single-quoted strings to represent charlists is deprecated.901 Use ~c"" if you indeed want a charlist or use "" instead.902 You may run "mix format --migrate" to change all single-quoted903 strings to use the ~c sigil and fix this warning.904 │905 168 │ defp pp_byte(byte, rest, output, depth, empty, opts) when byte in '{[' do906 │ ~907 │908 └─ lib/formatter.ex:168:69909910 warning: using single-quoted strings to represent charlists is deprecated.911 Use ~c"" if you indeed want a charlist or use "" instead.912 You may run "mix format --migrate" to change all single-quoted913 strings to use the ~c sigil and fix this warning.914 │915 181 │ defp pp_byte(byte, rest, output, depth, true = _empty, opts) when byte in '}]' do916 │ ~917 │918 └─ lib/formatter.ex:181:77919920 warning: using single-quoted strings to represent charlists is deprecated.921 Use ~c"" if you indeed want a charlist or use "" instead.922 You may run "mix format --migrate" to change all single-quoted923 strings to use the ~c sigil and fix this warning.924 │925 187 │ defp pp_byte(byte, rest, output, depth, false = empty, opts) when byte in '}]' do926 │ ~927 │928 └─ lib/formatter.ex:187:77929930 warning: using single-quoted strings to represent charlists is deprecated.931 Use ~c"" if you indeed want a charlist or use "" instead.932 You may run "mix format --migrate" to change all single-quoted933 strings to use the ~c sigil and fix this warning.934 │935 193 │ defp pp_byte(byte, rest, output, depth, _empty, opts) when byte in ',' do936 │ ~937 │938 └─ lib/formatter.ex:193:70939940 warning: using single-quoted strings to represent charlists is deprecated.941 Use ~c"" if you indeed want a charlist or use "" instead.942 You may run "mix format --migrate" to change all single-quoted943 strings to use the ~c sigil and fix this warning.944 │945 199 │ defp pp_byte(byte, rest, output, depth, empty, opts) when byte in ':' do946 │ ~947 │948 └─ lib/formatter.ex:199:69949950Generated jason app951==> ecto952Compiling 56 files (.ex)953 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead954 │955 474 │ Logger.warn """956 │ ~957 │958 └─ lib/ecto/changeset/relation.ex:474:14: Ecto.Changeset.Relation.process_current/3959960 warning: unused require Logger961 │962 6 │ require Logger963 │ ~964 │965 └─ lib/ecto/query/builder/join.ex:6:3966967 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead968 │969 287 │ @spec insert(t, name, Changeset.t | Ecto.Schema.t | fun(Changeset.t | Ecto.Schema.t), Keyword.t) :: t970 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~971 │972 └─ lib/ecto/multi.ex:287: Ecto.Multi (module)973974 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead975 │976 323 │ @spec update(t, name, Changeset.t | fun(Changeset.t), Keyword.t) :: t977 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~978 │979 └─ lib/ecto/multi.ex:323: Ecto.Multi (module)980981 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead982 │983 356 │ @spec insert_or_update(t, name, Changeset.t | fun(Changeset.t), Keyword.t) :: t984 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~985 │986 └─ lib/ecto/multi.ex:356: Ecto.Multi (module)987988 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead989 │990 397 │ @spec delete(t, name, Changeset.t | Ecto.Schema.t | fun(Changeset.t | Ecto.Schema.t), Keyword.t) :: t991 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~992 │993 └─ lib/ecto/multi.ex:397: Ecto.Multi (module)994995 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead996 │997 426 │ @spec one(998 │ ~~~~~~~~~~999 │1000 └─ lib/ecto/multi.ex:426: Ecto.Multi (module)10011002 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead1003 │1004 457 │ @spec all(1005 │ ~~~~~~~~~~1006 │1007 └─ lib/ecto/multi.ex:457: Ecto.Multi (module)10081009 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead1010 │1011 488 │ @spec exists?(1012 │ ~~~~~~~~~~~~~~1013 │1014 └─ lib/ecto/multi.ex:488: Ecto.Multi (module)10151016 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead1017 │1018 597 │ @spec insert_all(1019 │ ~~~~~~~~~~~~~~~~~1020 │1021 └─ lib/ecto/multi.ex:597: Ecto.Multi (module)10221023 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead1024 │1025 640 │ @spec update_all(t, name, Ecto.Queryable.t | fun(Ecto.Queryable.t), Keyword.t, Keyword.t) :: t1026 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1027 │1028 └─ lib/ecto/multi.ex:640: Ecto.Multi (module)10291030 warning: fun/1 is not valid in typespecs. Either specify fun() or use (... -> return) instead1031 │1032 678 │ @spec delete_all(t, name, Ecto.Queryable.t | fun(Ecto.Queryable.t), Keyword.t) :: t1033 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1034 │1035 └─ lib/ecto/multi.ex:678: Ecto.Multi (module)10361037 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1038 │1039 208 │ Logger.warn """1040 │ ~1041 │1042 └─ lib/ecto/repo/preloader.ex:208:18: Ecto.Repo.Preloader.fetch_ids/410431044 warning: unused require Ecto.Query1045 │1046 6 │ require Ecto.Query1047 │ ~1048 │1049 └─ lib/ecto/repo/preloader.ex:6:310501051 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1052 │1053 3156 │ Logger.warn """1054 │ ~1055 │1056 └─ lib/ecto/changeset.ex:3156:14: Ecto.Changeset.optimistic_lock/310571058 warning: BadStructError.exception/1 is undefined (module BadStructError is not available or is yet to be defined). Make sure the module name is correct and has been specified in full (or that an alias has been defined)1059 │1060 340 │ raise BadStructError, struct: struct, term: data1061 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1062 │1063 └─ lib/ecto/repo/queryable.ex:340: Ecto.Repo.Queryable.process/410641065 warning: Decimal.compare/2 is deprecated. Use Decimal.cmp/2 instead. This function will be re-introduced in Decimal v2.0 with new return value1066 │1067 2912 │ result = Decimal.compare(value, target_value) |> normalize_compare()1068 │ ~1069 │1070 └─ lib/ecto/changeset.ex:2912:22: Ecto.Changeset.compare_numbers/610711072 warning: the following clause is redundant:10731074 {decimal, ""} ->10751076 previous clauses have already matched on the following types:10771078 {:ok,1079 %Decimal{coef: :qNaN or :sNaN} or1080 %Decimal{sign: integer(), coef: :inf or :qNaN or :sNaN or integer(), exp: integer()} or1081 (%{..., sign: integer()} and not %Decimal{sign: integer(), coef: :NaN}) or1082 (map() and not %Decimal{coef: :NaN}) or atom() or bitstring() or empty_list() or float() or1083 fun() or integer() or non_empty_list(term(), term()) or pid() or port() or reference() or {...}}10841085 where "decimal" was given the type:10861087 # type: dynamic(:ok)1088 # from: lib/ecto/type.ex1089 {decimal, ""}10901091 type warning found at:1092 │1093 836 │ {decimal, ""} -> check_decimal(decimal, false)1094 │ ~1095 │1096 └─ lib/ecto/type.ex:836:21: Ecto.Type.cast_decimal/110971098 warning: expected a map or struct when accessing .__adapter__ in expression:10991100 repo.__adapter__11011102 where "repo" was given the type:11031104 # type: dynamic(atom())1105 # from: lib/mix/tasks/ecto.drop.ex:60:71106 Mix.Ecto.ensure_repo(repo, args)11071108 hint: "var.field" (without parentheses) means "var" is a map() while "var.fun()" (with parentheses) means "var" is an atom()11091110 type warning found at:1111 │1112 61 │ ensure_implements(repo.__adapter__, Ecto.Adapter.Storage,1113 │ ~1114 │1115 └─ lib/mix/tasks/ecto.drop.ex:61:30: Mix.Tasks.Ecto.Drop.run/111161117 warning: expected a map or struct when accessing .__adapter__ in expression:11181119 repo.__adapter__11201121 where "repo" was given the type:11221123 # type: dynamic(atom())1124 # from: lib/mix/tasks/ecto.create.ex:50:71125 Mix.Ecto.ensure_repo(repo, args)11261127 hint: "var.field" (without parentheses) means "var" is a map() while "var.fun()" (with parentheses) means "var" is an atom()11281129 type warning found at:1130 │1131 51 │ ensure_implements(repo.__adapter__, Ecto.Adapter.Storage,1132 │ ~1133 │1134 └─ lib/mix/tasks/ecto.create.ex:51:30: Mix.Tasks.Ecto.Create.run/111351136 warning: the following clause is redundant:11371138 {_, remainder} when is_binary(remainder) and byte_size(remainder) > 0 ->11391140 previous clauses have already matched on the following types:11411142 {:ok,1143 %Decimal{coef: :qNaN or :sNaN} or1144 %Decimal{sign: integer(), coef: :inf or :qNaN or :sNaN or integer(), exp: integer()} or1145 (%{..., sign: integer()} and not %Decimal{sign: integer(), coef: :NaN}) or1146 (map() and not %Decimal{coef: :NaN}) or atom() or bitstring() or empty_list() or float() or1147 fun() or integer() or non_empty_list(term(), term()) or pid() or port() or reference() or {...}}11481149 where "remainder" was given the types:11501151 # type: binary()1152 # from: lib/ecto/type.ex:837:271153 is_binary(remainder)11541155 # type: binary()1156 # from: lib/ecto/type.ex1157 {_, remainder}11581159 type warning found at:1160 │1161 837 │ {_, remainder} when is_binary(remainder) and byte_size(remainder) > 0 -> :error1162 │ ~1163 │1164 └─ lib/ecto/type.ex:837:77: Ecto.Type.cast_decimal/111651166Generated ecto app1167==> plug1168Compiling 1 file (.erl)1169Compiling 42 files (.ex)1170Generated plug app1171==> bamboo1172Compiling 25 files (.ex)1173 warning: redefining @doc attribute previously set at line 33.11741175 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:11761177 @doc """1178 new docs1179 """1180 def deliver(...)11811182 │1183 39 │ @doc "Adds email to `Bamboo.SentEmail`"1184 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1185 │1186 └─ lib/bamboo/adapters/local_adapter.ex:39: Bamboo.LocalAdapter.deliver/211871188 warning: Logger.warn/1 is deprecated. Use Logger.warning/2 instead1189 │1190 259 │ Logger.warn(1191 │ ~1192 │1193 └─ lib/bamboo/mailer.ex:259:12: Bamboo.Mailer.parse_opts/211941195 error: module Plug.Router is not loaded and could not be found. This may be happening because the module you are trying to load directly or indirectly depends on the current module1196 │1197 2 │ use Plug.Router1198 │ ^^^^^^^^^^^^^^^1199 │1200 └─ lib/bamboo/plug/sent_email_viewer/email_preview_plug.ex:2: Bamboo.SentEmailViewerPlug (module)12011202 error: module Plug.Router is not loaded and could not be found. This may be happening because the module you are trying to load directly or indirectly depends on the current module1203 │1204 2 │ use Plug.Router1205 │ ^^^^^^^^^^^^^^^1206 │1207 └─ lib/bamboo/plug/sent_email_api/sent_email_api_plug.ex:2: Bamboo.SentEmailApiPlug (module)120812091210== Compilation error in file lib/bamboo/plug/sent_email_viewer/email_preview_plug.ex ==1211** (CompileError) lib/bamboo/plug/sent_email_viewer/email_preview_plug.ex: cannot compile module Bamboo.SentEmailViewerPlug (errors have been logged)1212 (elixir 1.20.3) expanding macro: Kernel.use/11213 lib/bamboo/plug/sent_email_viewer/email_preview_plug.ex:2: Bamboo.SentEmailViewerPlug (module)1214could not compile dependency :bamboo, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile bamboo --force", update it with "mix deps.update bamboo" or clean it with "mix deps.clean bamboo"