Build log
nerves_system_rpi5
gulib 0.1.0 · fail · run gulib-0.1.0-1791193143356
585 of 585 lines
1Resolving Hex dependencies...2Resolution completed in 0.484s3Unchanged:4 circular_buffer 1.1.05 combine 0.10.06 cowboy 1.1.2 VULNERABLE!7 GHSA-w4f7-4cxr-rv3c (MEDIUM)8 aka: CVE-2026-43966, EEF-CVE-2026-439669 cowboy and gun affected by an HTTP Request/Response Splitting vulnerability10 https://osv.dev/vulnerability/GHSA-w4f7-4cxr-rv3c11 cowlib 1.0.2 VULNERABLE!12 EEF-CVE-2026-7790 (HIGH)13 aka: CVE-2026-7790, GHSA-32p9-57cr-4x6514 Unbounded chunk-size hex digits in cowlib cause quadratic CPU and memory DoS15 https://osv.dev/vulnerability/EEF-CVE-2026-77901617 EEF-CVE-2026-43970 (HIGH)18 aka: CVE-2026-43970, GHSA-84f2-rp86-235p19 Decompression Bomb in cow_spdy:inflate/2 Allows Memory Exhaustion via Crafted SPDY Frame20 https://osv.dev/vulnerability/EEF-CVE-2026-4397021 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 earmark 1.2.6 RETIRED!27 (deprecated) Earmark is no longer maintained. Migrate to a replacement, for example MDEx (https://hex.pm/packages/mdex).28 ecto 2.2.1229 elixir_make 0.10.030 ex_marshal 0.0.1331 expo 1.1.132 floki 0.18.133 gettext 0.26.234 gulib 0.1.035 interactive_cmd 0.1.436 mime 2.0.737 mochiweb 2.22.038 nerves 2.0.0-pre.239 nerves_discovery 0.1.540 nerves_logging 0.2.441 nerves_runtime 0.13.1342 nerves_system_bbb 2.30.243 nerves_system_br 1.34.444 nerves_system_mangopi_mq_pro 0.17.245 nerves_system_qemu_aarch64 0.4.246 nerves_system_rpi0 2.1.247 nerves_system_rpi4 2.1.248 nerves_system_rpi5 2.1.249 nerves_system_trellis 0.5.050 nerves_system_x86_64 1.34.251 nerves_toolchain_aarch64_nerves_linux_gnu 15.3.152 nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.153 nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.154 nerves_toolchain_riscv64_nerves_linux_gnu 15.3.155 nerves_toolchain_x86_64_nerves_linux_musl 15.3.156 nerves_uevent 0.1.757 plug 1.20.358 plug_crypto 2.2.059 poison 3.1.060 poolboy 1.5.261 property_table 0.3.462 ranch 1.3.263 ring_logger 0.11.764 tablet 0.3.365 telemetry 1.4.266 timex 3.7.1367 timex_ecto 3.4.068 toolshed 0.5.069 tzdata 1.2.270 uboot_env 1.0.271* Getting gulib (Hex package)72* Getting nerves (Hex package)73* Getting ring_logger (Hex package)74* Getting toolshed (Hex package)75* Getting nerves_runtime (Hex package)76* Getting nerves_system_bbb (Hex package)77* Getting nerves_system_mangopi_mq_pro (Hex package)78* Getting nerves_system_qemu_aarch64 (Hex package)79* Getting nerves_system_rpi0 (Hex package)80* Getting nerves_system_rpi4 (Hex package)81* Getting nerves_system_rpi5 (Hex package)82* Getting nerves_system_trellis (Hex package)83* Getting nerves_system_x86_64 (Hex package)84* Getting nerves_system_br (Hex package)85* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)86* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)87* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)88* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)89* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)90* Getting nerves_logging (Hex package)91* Getting nerves_uevent (Hex package)92* Getting uboot_env (Hex package)93* Getting elixir_make (Hex package)94* Getting property_table (Hex package)95* Getting circular_buffer (Hex package)96* Getting interactive_cmd (Hex package)97* Getting nerves_discovery (Hex package)98* Getting tablet (Hex package)99* Getting cowboy (Hex package)100* Getting earmark (Hex package)101* Getting ex_marshal (Hex package)102* Getting floki (Hex package)103* Getting plug (Hex package)104* Getting poison (Hex package)105* Getting timex (Hex package)106* Getting timex_ecto (Hex package)107* Getting ecto (Hex package)108* Getting decimal (Hex package)109* Getting poolboy (Hex package)110* Getting combine (Hex package)111* Getting gettext (Hex package)112* Getting tzdata (Hex package)113* Getting expo (Hex package)114* Getting mime (Hex package)115* Getting plug_crypto (Hex package)116* Getting telemetry (Hex package)117* Getting mochiweb (Hex package)118* Getting cowlib (Hex package)119* Getting ranch (Hex package)120Found retired packages, see above for details121Found packages with security advisories, see above for details122 warning: String.strip/1 is deprecated. Use String.trim/1 instead123 │124 4 │ @version File.read!("VERSION") |> String.strip125 │ ~126 │127 └─ /work/proj/deps_rpi5/poison/mix.exs:4:44: Poison.Mixfile (module)128129 warning: Code.load_file/1 is deprecated. Use Code.require_file/2 or Code.compile_file/2 instead130 │131 69 │ Code.load_file "tasks/docs.exs"132 │ ~133 │134 └─ mix.exs:69:10: Earmark.Mixfile.docs/1135 └─ mix.exs:74:10: Earmark.Mixfile.readme/1136137==> nerves_system_br138Generated nerves_system_br app139==> combine140Compiling 6 files (.ex)141 warning: the variable "n" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator142 │143 26 │ <<bits::bitstring-size(n), rest::bitstring>> ->144 │ ~145 │146 └─ lib/combine/parsers/binary.ex:26:30: Combine.Parsers.Binary.bits_impl/2147148 warning: the variable "bits_size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator149 │150 48 │ <<bits::bitstring-size(bits_size), rest::bitstring>> ->151 │ ~152 │153 └─ lib/combine/parsers/binary.ex:48:30: Combine.Parsers.Binary.bytes_impl/2154155 warning: the variable "size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator156 │157 70 │ <<int::big-unsigned-size(size), rest::bitstring>> ->158 │ ~159 │160 └─ lib/combine/parsers/binary.ex:70:36: Combine.Parsers.Binary.uint_impl/3161162 warning: the variable "size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator163 │164 77 │ <<int::little-unsigned-size(size), rest::bitstring>> ->165 │ ~166 │167 └─ lib/combine/parsers/binary.ex:77:39: Combine.Parsers.Binary.uint_impl/3168169 warning: the variable "size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator170 │171 101 │ <<int::big-signed-size(size), rest::bitstring>> ->172 │ ~173 │174 └─ lib/combine/parsers/binary.ex:101:34: Combine.Parsers.Binary.int_impl/3175176 warning: the variable "size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator177 │178 108 │ <<int::little-signed-size(size), rest::bitstring>> ->179 │ ~180 │181 └─ lib/combine/parsers/binary.ex:108:37: Combine.Parsers.Binary.int_impl/3182183 warning: the variable "size" (context Combine.Parsers.Binary) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator184 │185 128 │ <<num::float-size(size), rest::bitstring>> ->186 │ ~187 │188 └─ lib/combine/parsers/binary.ex:128:25: Combine.Parsers.Binary.float_impl/2189190 warning: the variable "byte_size" (context Combine.Parsers.Text) is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator191 │192 432 │ <<^expected::binary-size(byte_size), rest::binary>> ->193 │ ~194 │195 └─ lib/combine/parsers/text.ex:432:34: Combine.Parsers.Text.string_impl/2196197 warning: the following clause is redundant:198199 defp word_of_impl(%Combine.ParserState{...} = state, _pattern)200201 it has type:202203 dynamic(%Combine.ParserState{status: :ok}), dynamic()204205 previous clauses have already matched on the following types:206207 %Combine.ParserState{status: :error}, term()208 %Combine.ParserState{status: :ok}, term()209210 │211 488 │ defp word_of_impl(%ParserState{status: :ok} = state, _pattern) do212 │ ~213 │214 └─ lib/combine/parsers/text.ex:488:8: Combine.Parsers.Text.word_of_impl/2215216Generated combine app217==> mime218Compiling 1 file (.ex)219Generated mime app220==> circular_buffer221Compiling 1 file (.ex)222Generated circular_buffer app223==> poison224Compiling 4 files (.ex)225 warning: using single-quoted strings to represent charlists is deprecated.226 Use ~c"" if you indeed want a charlist or use "" instead.227 You may run "mix format --migrate" to change all single-quoted228 strings to use the ~c sigil and fix this warning.229 │230 93 │ for {char, seq} <- Enum.zip('"\\\n\t\r\f\b', '"\\ntrfb') do231 │ ~232 │233 └─ lib/poison/encoder.ex:93:31234235 warning: using single-quoted strings to represent charlists is deprecated.236 Use ~c"" if you indeed want a charlist or use "" instead.237 You may run "mix format --migrate" to change all single-quoted238 strings to use the ~c sigil and fix this warning.239 │240 93 │ for {char, seq} <- Enum.zip('"\\\n\t\r\f\b', '"\\ntrfb') do241 │ ~242 │243 └─ lib/poison/encoder.ex:93:48244245 warning: using single-quoted strings to represent charlists is deprecated.246 Use ~c"" if you indeed want a charlist or use "" instead.247 You may run "mix format --migrate" to change all single-quoted248 strings to use the ~c sigil and fix this warning.249 │250 139 │ defp chunk_size(<<char>> <> _, _mode, acc) when char <= 0x1F or char in '"\\' do251 │ ~252 │253 └─ lib/poison/encoder.ex:139:75254255 warning: using single-quoted strings to represent charlists is deprecated.256 Use ~c"" if you indeed want a charlist or use "" instead.257 You may run "mix format --migrate" to change all single-quoted258 strings to use the ~c sigil and fix this warning.259 │260 77 │ defp value(<<char, _ :: binary>> = string, pos, _keys) when char in '-0123456789' do261 │ ~262 │263 └─ lib/poison/parser.ex:77:71264265 warning: using single-quoted strings to represent charlists is deprecated.266 Use ~c"" if you indeed want a charlist or use "" instead.267 You may run "mix format --migrate" to change all single-quoted268 strings to use the ~c sigil and fix this warning.269 │270 155 │ defp number_int(<<char, _ :: binary>> = string, pos, acc) when char in '123456789' do271 │ ~272 │273 └─ lib/poison/parser.ex:155:74274275 warning: using single-quoted strings to represent charlists is deprecated.276 Use ~c"" if you indeed want a charlist or use "" instead.277 You may run "mix format --migrate" to change all single-quoted278 strings to use the ~c sigil and fix this warning.279 │280 171 │ defp number_exp(<<e>> <> rest, frac, pos, acc) when e in 'eE' do281 │ ~282 │283 └─ lib/poison/parser.ex:171:60284285 warning: using single-quoted strings to represent charlists is deprecated.286 Use ~c"" if you indeed want a charlist or use "" instead.287 You may run "mix format --migrate" to change all single-quoted288 strings to use the ~c sigil and fix this warning.289 │290 197 │ defp number_digits(<<char>> <> rest = string, pos) when char in '0123456789' do291 │ ~292 │293 └─ lib/poison/parser.ex:197:67294295 warning: using single-quoted strings to represent charlists is deprecated.296 Use ~c"" if you indeed want a charlist or use "" instead.297 You may run "mix format --migrate" to change all single-quoted298 strings to use the ~c sigil and fix this warning.299 │300 205 │ defp number_digits_count(<<char>> <> rest, acc) when char in '0123456789' do301 │ ~302 │303 └─ lib/poison/parser.ex:205:64304305 warning: using single-quoted strings to represent charlists is deprecated.306 Use ~c"" if you indeed want a charlist or use "" instead.307 You may run "mix format --migrate" to change all single-quoted308 strings to use the ~c sigil and fix this warning.309 │310 229 │ for {seq, char} <- Enum.zip('"\\ntr/fb', '"\\\n\t\r/\f\b') do311 │ ~312 │313 └─ lib/poison/parser.ex:229:31314315 warning: using single-quoted strings to represent charlists is deprecated.316 Use ~c"" if you indeed want a charlist or use "" instead.317 You may run "mix format --migrate" to change all single-quoted318 strings to use the ~c sigil and fix this warning.319 │320 229 │ for {seq, char} <- Enum.zip('"\\ntr/fb', '"\\\n\t\r/\f\b') do321 │ ~322 │323 └─ lib/poison/parser.ex:229:44324325 warning: using single-quoted strings to represent charlists is deprecated.326 Use ~c"" if you indeed want a charlist or use "" instead.327 You may run "mix format --migrate" to change all single-quoted328 strings to use the ~c sigil and fix this warning.329 │330 239 │ when a1 in 'dD' and a2 in 'dD'331 │ ~332 │333 └─ lib/poison/parser.ex:239:16334335 warning: using single-quoted strings to represent charlists is deprecated.336 Use ~c"" if you indeed want a charlist or use "" instead.337 You may run "mix format --migrate" to change all single-quoted338 strings to use the ~c sigil and fix this warning.339 │340 239 │ when a1 in 'dD' and a2 in 'dD'341 │ ~342 │343 └─ lib/poison/parser.ex:239:31344345 warning: using single-quoted strings to represent charlists is deprecated.346 Use ~c"" if you indeed want a charlist or use "" instead.347 You may run "mix format --migrate" to change all single-quoted348 strings to use the ~c sigil and fix this warning.349 │350 240 │ and (b1 in '89abAB')351 │ ~352 │353 └─ lib/poison/parser.ex:240:16354355 warning: using single-quoted strings to represent charlists is deprecated.356 Use ~c"" if you indeed want a charlist or use "" instead.357 You may run "mix format --migrate" to change all single-quoted358 strings to use the ~c sigil and fix this warning.359 │360 274 │ defp skip_whitespace(<<char>> <> rest, pos) when char in '\s\n\t\r' do361 │ ~362 │363 └─ lib/poison/parser.ex:274:60364365 warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead366 │367 22 │ if Application.get_env(:poison, :native) do368 │ ~369 │370 └─ lib/poison/parser.ex:22:18: Poison.Parser (module)371372 warning: use Bitwise is deprecated. import Bitwise instead373 │374 26 │ use Bitwise375 │ ~~~~~~~~~~~376 │377 └─ lib/poison/parser.ex:26: Poison.Parser (module)378379 warning: the variable "count" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator380 │381 199 │ <<digits :: binary-size(count), rest :: binary>> = string382 │ ~383 │384 └─ lib/poison/parser.ex:199:29: Poison.Parser.number_digits/2385386 warning: the variable "count" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator387 │388 225 │ <<chunk :: binary-size(count), rest :: binary>> = string389 │ ~390 │391 └─ lib/poison/parser.ex:225:28: Poison.Parser.string_continue/3392393 warning: use Bitwise is deprecated. import Bitwise instead394 │395 83 │ use Bitwise396 │ ~~~~~~~~~~~397 │398 └─ lib/poison/encoder.ex:83: Poison.Encoder.BitString (module)399400 warning: the variable "size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator401 │402 135 │ <<chunk :: binary-size(size), rest :: binary>> = string403 │ ~404 │405 └─ lib/poison/encoder.ex:135:28: Poison.Encoder.BitString.escape/2406407 warning: Integer.to_char_list/2 is deprecated. Use Integer.to_charlist/2 instead408 │409 173 │ case Integer.to_char_list(char, 16) do410 │ ~411 │412 └─ lib/poison/encoder.ex:173:18: Poison.Encoder.BitString.seq/1413414Generated poison app415==> plug_crypto416Compiling 5 files (.ex)417Generated plug_crypto app418==> nerves_compatibility_test419===> Analyzing applications...420===> Compiling ranch421 ┌─ src/ranch.erl:422 │423 73 │ catch Transport:controlling_process(Socket, AcceptorsSup);424 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.425Compile directive 'nowarn_deprecated_catch' can be used to suppress426warnings in selected modules.427428429 ┌─ src/ranch_conns_sup.erl:430 │431 80 │ catch erlang:send(SupPid, {?MODULE, active_connections, self(), Tag},432 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.433Compile directive 'nowarn_deprecated_catch' can be used to suppress434warnings in selected modules.435436437 ┌─ src/ranch_ssl.erl:438 │439 128 │ case ssl:ssl_accept(CSocket, Timeout) of440 │ ╰── Warning: ssl:ssl_accept/2 is removed; use ssl:handshake/1,2,3 instead441442 ┌─ src/ranch_ssl.erl:443 │444 233 │ end, ssl:cipher_suites());445 │ ╰── Warning: ssl:cipher_suites/0 is removed; use ssl:cipher_suites/2,3 instead446447 ┌─ src/ranch_ssl.erl:448 │449 235 │ ssl:cipher_suites()450 │ ╰── Warning: ssl:cipher_suites/0 is removed; use ssl:cipher_suites/2,3 instead451452453==> tzdata454Compiling 18 files (.ex)455Generated tzdata app456==> tablet457Compiling 2 files (.ex)458Generated tablet app459==> elixir_make460Compiling 8 files (.ex)461Generated elixir_make app462==> nerves_logging463 CC kmsg_tailer.o464 LD kmsg_tailer465Compiling 5 files (.ex)466Generated nerves_logging app467==> earmark468warning: in order to compile .yrl files, you must add "compilers: [:yecc] ++ Mix.compilers()" to the "def project" section of earmark's mix.exs469Compiling 1 file (.yrl)470warning: in order to compile .xrl files, you must add "compilers: [:leex] ++ Mix.compilers()" to the "def project" section of earmark's mix.exs471Compiling 2 files (.xrl)472Compiling 3 files (.erl)473Compiling 24 files (.ex)474 warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.475476 This error happens when you have function calls without parentheses inside keywords. For example:477478 function(arg, one: nested_call a, b, c)479 function(arg, one: if expr, do: :this, else: :that)480481 In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:482483 function(arg, one: if(expr, do: :this, else: :that))484 function(arg, one: nested_call(a, b, c))485486 Ambiguity found at:487 │488 407 │ raise Error, "#{inspect task} has died with reason #{inspect reason}"489 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~490 │491 └─ lib/earmark.ex:407492493 warning: missing parentheses for expression following "do:" keyword. Parentheses are required to solve ambiguity inside keywords.494495 This error happens when you have function calls without parentheses inside keywords. For example:496497 function(arg, one: nested_call a, b, c)498 function(arg, one: if expr, do: :this, else: :that)499500 In the examples above, we don't know if the arguments "b" and "c" apply to the function "function" or "nested_call". Or if the keywords "do" and "else" apply to the function "function" or "if". You can solve this by explicitly adding parentheses:501502 function(arg, one: if(expr, do: :this, else: :that))503 function(arg, one: nested_call(a, b, c))504505 Ambiguity found at:506 │507 409 │ raise Error, "#{inspect task} has not responded within the set timeout of #{timeout}ms, consider increasing it"508 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~509 │510 └─ lib/earmark.ex:409511512warning: 2..-1 has a default step of -1, please write 2..-1//-1 instead513 lib/earmark/helpers/reparse_helpers.ex:15: Earmark.Helpers.ReparseHelpers.indent_list_item_body/2514515 warning: duplicate key :inside_code found in struct516 │517 65 │ do: defstruct lnb: 0, line: "", level: 1, inside_code: false, inside_code: false518 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~519 │520 └─ lib/earmark/line.ex:65: Earmark.Line.SetextUnderlineHeading (module)521522warning: ~R/.../ is deprecated, use ~r/.../ instead523 lib/earmark/line.ex:129: Earmark.Line._type_of/3524525 warning: Tuple.append/2 is deprecated. Use insert_at instead526 │527 102 │ |> Tuple.append( false )528 │ ~529 │530 └─ lib/earmark/scanner.ex:102:14: Earmark.Scanner.scan_next_token/2531532Generated earmark app533==> nerves_compatibility_test534===> Analyzing applications...535===> Compiling mochiweb536===> Compiling src/mochiweb_multipart.erl failed537 ┌─ src/mochiweb_multipart.erl:538 │539 278 │ {maybe, Start} ->540 │ ╰── syntax error before: ','541542 ┌─ src/mochiweb_multipart.erl:543 │544 331 │ {maybe, Skip};545 │ ╰── syntax error before: ','546547548 ┌─ src/mochiweb_multipart.erl:549 │550 186 │ feed_mp(headers,551 │ ╰── function feed_mp/2 undefined552553554 ┌─ src/mochiweb_multipart.erl:555 │556 191 │ parse_headers(<<>>) -> [];557 │ ╰── Warning: function parse_headers/1 is unused558559 ┌─ src/mochiweb_multipart.erl:560 │561 194 │ parse_headers(Binary, Acc) ->562 │ ╰── Warning: function parse_headers/2 is unused563564 ┌─ src/mochiweb_multipart.erl:565 │566 202 │ split_header(Line) ->567 │ ╰── Warning: function split_header/1 is unused568569 ┌─ src/mochiweb_multipart.erl:570 │571 217 │ read_more(State = #mp{length = Length, buffer = Buffer,572 │ ╰── Warning: function read_more/1 is unused573574 ┌─ src/mochiweb_multipart.erl:575 │576 300 │ find_in_binary(P, Data) when size(P) > 0 ->577 │ ╰── Warning: function find_in_binary/2 is unused578579 ┌─ src/mochiweb_multipart.erl:580 │581 312 │ partial_find(_B, _D, _N, 0) -> not_found;582 │ ╰── Warning: function partial_find/4 is unused583584585** (Mix) Could not compile dependency :mochiweb, "/home/nerves/.mix/elixir/1-20-otp-29/rebar3 bare compile --paths /work/proj/_build/rpi5/lib/*/ebin" command failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile mochiweb --force", update it with "mix deps.update mochiweb" or clean it with "mix deps.clean mochiweb"