guard

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"