Build log
nerves_system_rpi4
bearcat_phoenix 0.1.1 · fail · run bearcat_phoenix-0.1.1-1790059582344
1230 of 1230 lines
1Resolving Hex dependencies...2Resolution completed in 1.337s3Unchanged:4 bearcat_phoenix 0.1.15 circular_buffer 1.1.06 csv 2.0.07 elixir_make 0.10.08 httpotion 3.0.3 RETIRED!9 (deprecated) Not really maintained, please check out Tesla10 ibrowse 4.5.011 interactive_cmd 0.1.412 jason 1.4.513 mime 1.6.014 nerves 1.15.015 nerves_discovery 0.1.516 nerves_logging 0.2.417 nerves_runtime 0.13.1318 nerves_system_bbb 2.30.219 nerves_system_br 1.34.420 nerves_system_mangopi_mq_pro 0.17.221 nerves_system_qemu_aarch64 0.4.222 nerves_system_rpi 2.1.223 nerves_system_rpi0 2.1.224 nerves_system_rpi0_2 2.1.225 nerves_system_rpi2 2.1.226 nerves_system_rpi3 2.1.227 nerves_system_rpi4 2.1.228 nerves_system_rpi5 2.1.229 nerves_system_x86_64 1.34.230 nerves_toolchain_aarch64_nerves_linux_gnu 15.3.131 nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.132 nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.133 nerves_toolchain_riscv64_nerves_linux_gnu 15.3.134 nerves_toolchain_x86_64_nerves_linux_musl 15.3.135 nerves_uevent 0.1.736 parallel_stream 1.0.637 plug 1.4.5 VULNERABLE!38 EEF-CVE-2026-56813 (LOW)39 aka: CVE-2026-56813, GHSA-wpmj-jh88-rpgm40 Cookie attribute injection in Plug.Conn.Cookies.encode/241 https://osv.dev/vulnerability/EEF-CVE-2026-568134243 EEF-CVE-2026-56814 (MEDIUM)44 aka: CVE-2026-56814, GHSA-95qv-c9g9-rm6345 Plug: multipart :length limit is not charged for part headers, enabling unbounded temp-file creation (denial of service)46 https://osv.dev/vulnerability/EEF-CVE-2026-568144748 EEF-CVE-2026-8468 (HIGH)49 aka: CVE-2026-8468, GHSA-468c-vq7p-gh6450 Unbounded buffer accumulation in multipart header parsing causes denial of service in plug51 https://osv.dev/vulnerability/EEF-CVE-2026-846852 poison 3.1.053 property_table 0.3.454 ring_logger 0.11.755 shoehorn 0.9.356 tablet 0.3.357 toolshed 0.5.058 uboot_env 1.0.259* Getting bearcat_phoenix (Hex package)60* Getting nerves (Hex package)61* Getting shoehorn (Hex package)62* Getting ring_logger (Hex package)63* Getting toolshed (Hex package)64* Getting nerves_runtime (Hex package)65* Getting nerves_system_bbb (Hex package)66* Getting nerves_system_mangopi_mq_pro (Hex package)67* Getting nerves_system_qemu_aarch64 (Hex package)68* Getting nerves_system_rpi (Hex package)69* Getting nerves_system_rpi0 (Hex package)70* Getting nerves_system_rpi0_2 (Hex package)71* Getting nerves_system_rpi2 (Hex package)72* Getting nerves_system_rpi3 (Hex package)73* Getting nerves_system_rpi4 (Hex package)74* Getting nerves_system_rpi5 (Hex package)75* Getting nerves_system_x86_64 (Hex package)76* Getting nerves_system_br (Hex package)77* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)78* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)79* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)80* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)81* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)82* Getting nerves_logging (Hex package)83* Getting nerves_uevent (Hex package)84* Getting uboot_env (Hex package)85* Getting elixir_make (Hex package)86* Getting property_table (Hex package)87* Getting circular_buffer (Hex package)88* Getting interactive_cmd (Hex package)89* Getting jason (Hex package)90* Getting nerves_discovery (Hex package)91* Getting tablet (Hex package)92* Getting csv (Hex package)93* Getting httpotion (Hex package)94* Getting plug (Hex package)95* Getting poison (Hex package)96* Getting mime (Hex package)97* Getting ibrowse (Hex package)98* Getting parallel_stream (Hex package)99Found retired packages, see above for details100Found packages with security advisories, see above for details101==> jason102Compiling 10 files (.ex)103Compiling lib/encode.ex (it's taking more than 10s)104Compiling lib/decoder.ex (it's taking more than 10s)105Generated jason app106==> tablet107Compiling 2 files (.ex)108Generated tablet app109==> elixir_make110Compiling 8 files (.ex)111Generated elixir_make app112==> nerves_discovery113Compiling 5 files (.ex)114Generated nerves_discovery app115==> interactive_cmd116Compiling 1 file (.ex)117Generated interactive_cmd app118==> nerves119HOST_CC port.o120HOST_LD port121Compiling 55 files (.ex)122Generated nerves app123==> nerves_compatibility_test124125Nerves environment126 MIX_TARGET: rpi4127 MIX_ENV: prod128129Checking for prebuilt Nerves artifacts...130 warning: found quoted keyword "coveralls" but the quotes are not required. Note that keywords are always atoms, even when quoted. Similar to atoms, keywords made exclusively of ASCII letters, numbers, and underscores and not beginning with a number do not require quotes131 │132 18 │ preferred_cli_env: ["coveralls": :test, "coveralls.detail": :test, "coveralls.post": :test]133 │ ~134 │135 └─ /work/proj/deps_rpi4/csv/mix.exs:18:29136137 warning: String.strip/1 is deprecated. Use String.trim/1 instead138 │139 4 │ @version File.read!("VERSION") |> String.strip140 │ ~141 │142 └─ /work/proj/deps_rpi4/poison/mix.exs:4:44: Poison.Mixfile (module)143144 warning: found quoted keyword "coveralls" but the quotes are not required. Note that keywords are always atoms, even when quoted. Similar to atoms, keywords made exclusively of ASCII letters, numbers, and underscores and not beginning with a number do not require quotes145 │146 17 │ preferred_cli_env: ["coveralls": :test, "coveralls.detail": :test, "coveralls.post": :test]147 │ ~148 │149 └─ /work/proj/deps_rpi4/parallel_stream/mix.exs:17:29150151 Found nerves_system_rpi4 in cache152 /home/nerves/.nerves/artifacts/nerves_system_rpi4-portable-2.1.2153 Found nerves_toolchain_aarch64_nerves_linux_gnu in cache154 /home/nerves/.nerves/artifacts/nerves_toolchain_aarch64_nerves_linux_gnu-linux_x86_64-15.3.1155==> jason156Compiling 10 files (.ex)157Compiling lib/decoder.ex (it's taking more than 10s)158Generated jason app159==> tablet160Compiling 2 files (.ex)161Generated tablet app162==> elixir_make163Compiling 8 files (.ex)164Generated elixir_make app165==> nerves_discovery166Compiling 5 files (.ex)167Generated nerves_discovery app168==> interactive_cmd169Compiling 1 file (.ex)170Generated interactive_cmd app171==> nerves172HOST_CC port.o173HOST_LD port174Compiling 55 files (.ex)175Generated nerves app176 warning: found quoted keyword "coveralls" but the quotes are not required. Note that keywords are always atoms, even when quoted. Similar to atoms, keywords made exclusively of ASCII letters, numbers, and underscores and not beginning with a number do not require quotes177 │178 18 │ preferred_cli_env: ["coveralls": :test, "coveralls.detail": :test, "coveralls.post": :test]179 │ ~180 │181 └─ /work/proj/deps_rpi4/csv/mix.exs:18:29182183 warning: String.strip/1 is deprecated. Use String.trim/1 instead184 │185 4 │ @version File.read!("VERSION") |> String.strip186 │ ~187 │188 └─ /work/proj/deps_rpi4/poison/mix.exs:4:44: Poison.Mixfile (module)189190 warning: found quoted keyword "coveralls" but the quotes are not required. Note that keywords are always atoms, even when quoted. Similar to atoms, keywords made exclusively of ASCII letters, numbers, and underscores and not beginning with a number do not require quotes191 │192 17 │ preferred_cli_env: ["coveralls": :test, "coveralls.detail": :test, "coveralls.post": :test]193 │ ~194 │195 └─ /work/proj/deps_rpi4/parallel_stream/mix.exs:17:29196197==> nerves_system_br198Generated nerves_system_br app199==> nerves_toolchain_aarch64_nerves_linux_gnu200Compiling 1 file (.ex)201Generated nerves_toolchain_aarch64_nerves_linux_gnu app202==> nerves_system_rpi4203Generated nerves_system_rpi4 app204==> nerves_compatibility_test205206Nerves environment207 MIX_TARGET: rpi4208 MIX_ENV: prod209210==> mime211Compiling 2 files (.ex)212Generated mime app213==> circular_buffer214Compiling 1 file (.ex)215Generated circular_buffer app216==> poison217Compiling 4 files (.ex)218 warning: using single-quoted strings to represent charlists is deprecated.219 Use ~c"" if you indeed want a charlist or use "" instead.220 You may run "mix format --migrate" to change all single-quoted221 strings to use the ~c sigil and fix this warning.222 │223 93 │ for {char, seq} <- Enum.zip('"\\\n\t\r\f\b', '"\\ntrfb') do224 │ ~225 │226 └─ lib/poison/encoder.ex:93:31227228 warning: using single-quoted strings to represent charlists is deprecated.229 Use ~c"" if you indeed want a charlist or use "" instead.230 You may run "mix format --migrate" to change all single-quoted231 strings to use the ~c sigil and fix this warning.232 │233 93 │ for {char, seq} <- Enum.zip('"\\\n\t\r\f\b', '"\\ntrfb') do234 │ ~235 │236 └─ lib/poison/encoder.ex:93:48237238 warning: using single-quoted strings to represent charlists is deprecated.239 Use ~c"" if you indeed want a charlist or use "" instead.240 You may run "mix format --migrate" to change all single-quoted241 strings to use the ~c sigil and fix this warning.242 │243 139 │ defp chunk_size(<<char>> <> _, _mode, acc) when char <= 0x1F or char in '"\\' do244 │ ~245 │246 └─ lib/poison/encoder.ex:139:75247248 warning: using single-quoted strings to represent charlists is deprecated.249 Use ~c"" if you indeed want a charlist or use "" instead.250 You may run "mix format --migrate" to change all single-quoted251 strings to use the ~c sigil and fix this warning.252 │253 77 │ defp value(<<char, _ :: binary>> = string, pos, _keys) when char in '-0123456789' do254 │ ~255 │256 └─ lib/poison/parser.ex:77:71257258 warning: using single-quoted strings to represent charlists is deprecated.259 Use ~c"" if you indeed want a charlist or use "" instead.260 You may run "mix format --migrate" to change all single-quoted261 strings to use the ~c sigil and fix this warning.262 │263 155 │ defp number_int(<<char, _ :: binary>> = string, pos, acc) when char in '123456789' do264 │ ~265 │266 └─ lib/poison/parser.ex:155:74267268 warning: using single-quoted strings to represent charlists is deprecated.269 Use ~c"" if you indeed want a charlist or use "" instead.270 You may run "mix format --migrate" to change all single-quoted271 strings to use the ~c sigil and fix this warning.272 │273 171 │ defp number_exp(<<e>> <> rest, frac, pos, acc) when e in 'eE' do274 │ ~275 │276 └─ lib/poison/parser.ex:171:60277278 warning: using single-quoted strings to represent charlists is deprecated.279 Use ~c"" if you indeed want a charlist or use "" instead.280 You may run "mix format --migrate" to change all single-quoted281 strings to use the ~c sigil and fix this warning.282 │283 197 │ defp number_digits(<<char>> <> rest = string, pos) when char in '0123456789' do284 │ ~285 │286 └─ lib/poison/parser.ex:197:67287288 warning: using single-quoted strings to represent charlists is deprecated.289 Use ~c"" if you indeed want a charlist or use "" instead.290 You may run "mix format --migrate" to change all single-quoted291 strings to use the ~c sigil and fix this warning.292 │293 205 │ defp number_digits_count(<<char>> <> rest, acc) when char in '0123456789' do294 │ ~295 │296 └─ lib/poison/parser.ex:205:64297298 warning: using single-quoted strings to represent charlists is deprecated.299 Use ~c"" if you indeed want a charlist or use "" instead.300 You may run "mix format --migrate" to change all single-quoted301 strings to use the ~c sigil and fix this warning.302 │303 229 │ for {seq, char} <- Enum.zip('"\\ntr/fb', '"\\\n\t\r/\f\b') do304 │ ~305 │306 └─ lib/poison/parser.ex:229:31307308 warning: using single-quoted strings to represent charlists is deprecated.309 Use ~c"" if you indeed want a charlist or use "" instead.310 You may run "mix format --migrate" to change all single-quoted311 strings to use the ~c sigil and fix this warning.312 │313 229 │ for {seq, char} <- Enum.zip('"\\ntr/fb', '"\\\n\t\r/\f\b') do314 │ ~315 │316 └─ lib/poison/parser.ex:229:44317318 warning: using single-quoted strings to represent charlists is deprecated.319 Use ~c"" if you indeed want a charlist or use "" instead.320 You may run "mix format --migrate" to change all single-quoted321 strings to use the ~c sigil and fix this warning.322 │323 239 │ when a1 in 'dD' and a2 in 'dD'324 │ ~325 │326 └─ lib/poison/parser.ex:239:16327328 warning: using single-quoted strings to represent charlists is deprecated.329 Use ~c"" if you indeed want a charlist or use "" instead.330 You may run "mix format --migrate" to change all single-quoted331 strings to use the ~c sigil and fix this warning.332 │333 239 │ when a1 in 'dD' and a2 in 'dD'334 │ ~335 │336 └─ lib/poison/parser.ex:239:31337338 warning: using single-quoted strings to represent charlists is deprecated.339 Use ~c"" if you indeed want a charlist or use "" instead.340 You may run "mix format --migrate" to change all single-quoted341 strings to use the ~c sigil and fix this warning.342 │343 240 │ and (b1 in '89abAB')344 │ ~345 │346 └─ lib/poison/parser.ex:240:16347348 warning: using single-quoted strings to represent charlists is deprecated.349 Use ~c"" if you indeed want a charlist or use "" instead.350 You may run "mix format --migrate" to change all single-quoted351 strings to use the ~c sigil and fix this warning.352 │353 274 │ defp skip_whitespace(<<char>> <> rest, pos) when char in '\s\n\t\r' do354 │ ~355 │356 └─ lib/poison/parser.ex:274:60357358 warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead359 │360 22 │ if Application.get_env(:poison, :native) do361 │ ~362 │363 └─ lib/poison/parser.ex:22:18: Poison.Parser (module)364365 warning: use Bitwise is deprecated. import Bitwise instead366 │367 26 │ use Bitwise368 │ ~~~~~~~~~~~369 │370 └─ lib/poison/parser.ex:26: Poison.Parser (module)371372 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 operator373 │374 199 │ <<digits :: binary-size(count), rest :: binary>> = string375 │ ~376 │377 └─ lib/poison/parser.ex:199:29: Poison.Parser.number_digits/2378379 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 225 │ <<chunk :: binary-size(count), rest :: binary>> = string382 │ ~383 │384 └─ lib/poison/parser.ex:225:28: Poison.Parser.string_continue/3385386 warning: use Bitwise is deprecated. import Bitwise instead387 │388 83 │ use Bitwise389 │ ~~~~~~~~~~~390 │391 └─ lib/poison/encoder.ex:83: Poison.Encoder.BitString (module)392393 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 operator394 │395 135 │ <<chunk :: binary-size(size), rest :: binary>> = string396 │ ~397 │398 └─ lib/poison/encoder.ex:135:28: Poison.Encoder.BitString.escape/2399400 warning: Integer.to_char_list/2 is deprecated. Use Integer.to_charlist/2 instead401 │402 173 │ case Integer.to_char_list(char, 16) do403 │ ~404 │405 └─ lib/poison/encoder.ex:173:18: Poison.Encoder.BitString.seq/1406407Generated poison app408==> nerves_logging409 CC kmsg_tailer.o410 LD kmsg_tailer411Compiling 5 files (.ex)412Generated nerves_logging app413==> nerves_compatibility_test414===> Analyzing applications...415===> Compiling ibrowse416 ┌─ src/ibrowse_lb.erl:417 │418 93 │ case catch gen_server:call(Lb_pid, stop) of419 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.420Compile directive 'nowarn_deprecated_catch' can be used to suppress421warnings in selected modules.422423 ┌─ src/ibrowse_lb.erl:424 │425 168 │ catch Pid ! {trace, Bool},426 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.427Compile directive 'nowarn_deprecated_catch' can be used to suppress428warnings in selected modules.429430 ┌─ src/ibrowse_lb.erl:431 │432 197 │ catch ets:delete(ibrowse_lb, {Host, Port}),433 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.434Compile directive 'nowarn_deprecated_catch' can be used to suppress435warnings in selected modules.436437438 ┌─ src/ibrowse_lib.erl:439 │440 65 │ case catch decode_rfc822_date_1(string:tokens(String, ", \t\r\n")) of441 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.442Compile directive 'nowarn_deprecated_catch' can be used to suppress443warnings in selected modules.444445 ┌─ src/ibrowse_lib.erl:446 │447 425 │ catch apply(M, F, [Fmt, Args]).448 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.449Compile directive 'nowarn_deprecated_catch' can be used to suppress450warnings in selected modules.451452453 ┌─ src/ibrowse.erl:454 │455 146 │ case catch gen_server:call(ibrowse, stop) of456 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.457Compile directive 'nowarn_deprecated_catch' can be used to suppress458warnings in selected modules.459460 ┌─ src/ibrowse.erl:461 │462 342 │ case catch parse_url(Url) of463 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.464Compile directive 'nowarn_deprecated_catch' can be used to suppress465warnings in selected modules.466467 ┌─ src/ibrowse.erl:468 │469 506 │ case catch ibrowse_http_client:send_req(Conn_Pid, Parsed_url,470 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.471Compile directive 'nowarn_deprecated_catch' can be used to suppress472warnings in selected modules.473474 ┌─ src/ibrowse.erl:475 │476 510 │ P_info = case catch erlang:process_info(Conn_Pid, [messages, message_queue_len, backtrace]) of477 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.478Compile directive 'nowarn_deprecated_catch' can be used to suppress479warnings in selected modules.480481 ┌─ src/ibrowse.erl:482 │483 623 │ case catch parse_url(Url) of484 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.485Compile directive 'nowarn_deprecated_catch' can be used to suppress486warnings in selected modules.487488 ┌─ src/ibrowse.erl:489 │490 646 │ catch Pid ! {stream_next, Req_id},491 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.492Compile directive 'nowarn_deprecated_catch' can be used to suppress493warnings in selected modules.494495 ┌─ src/ibrowse.erl:496 │497 661 │ catch Pid ! {stream_close, Req_id},498 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.499Compile directive 'nowarn_deprecated_catch' can be used to suppress500warnings in selected modules.501502 ┌─ src/ibrowse.erl:503 │504 760 │ MsgQueueSize = case (catch process_info(Lb_pid, message_queue_len)) of505 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.506Compile directive 'nowarn_deprecated_catch' can be used to suppress507warnings in selected modules.508509 ┌─ src/ibrowse.erl:510 │511 927 │ Ret = (catch import_config()),512 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.513Compile directive 'nowarn_deprecated_catch' can be used to suppress514warnings in selected modules.515516 ┌─ src/ibrowse.erl:517 │518 931 │ Ret = (catch import_config(File)),519 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.520Compile directive 'nowarn_deprecated_catch' can be used to suppress521warnings in selected modules.522523 ┌─ src/ibrowse.erl:524 │525 935 │ Ret = (catch apply_config(Terms)),526 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.527Compile directive 'nowarn_deprecated_catch' can be used to suppress528warnings in selected modules.529530 ┌─ src/ibrowse.erl:531 │532 939 │ Ret = (catch insert_config(Terms)),533 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.534Compile directive 'nowarn_deprecated_catch' can be used to suppress535warnings in selected modules.536537 ┌─ src/ibrowse.erl:538 │539 972 │ catch Pid ! {trace, false}540 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.541Compile directive 'nowarn_deprecated_catch' can be used to suppress542warnings in selected modules.543544 ┌─ src/ibrowse.erl:545 │546 989 │ catch Pid ! {trace, Bool};547 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.548Compile directive 'nowarn_deprecated_catch' can be used to suppress549warnings in selected modules.550551552 ┌─ src/ibrowse_http_client.erl:553 │554 106 │ case catch gen_server:call(Conn_pid, stop) of555 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.556Compile directive 'nowarn_deprecated_catch' can be used to suppress557warnings in selected modules.558559 ┌─ src/ibrowse_http_client.erl:560 │561 115 │ case catch gen_server:call(Conn_Pid,562 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.563Compile directive 'nowarn_deprecated_catch' can be used to suppress564warnings in selected modules.565566 ┌─ src/ibrowse_http_client.erl:567 │568 149 │ case catch ibrowse_lib:parse_url(Url) of569 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.570Compile directive 'nowarn_deprecated_catch' can be used to suppress571warnings in selected modules.572573 ┌─ src/ibrowse_http_client.erl:574 │575 274 │ catch StreamTo ! {ibrowse_async_response_timeout, ReqId},576 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.577Compile directive 'nowarn_deprecated_catch' can be used to suppress578warnings in selected modules.579580 ┌─ src/ibrowse_http_client.erl:581 │582 315 │ (catch ets:select_delete(Tid, [{{{'_','_','$1'},'_'},[{'==','$1',{const,self()}}],[true]}])),583 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.584Compile directive 'nowarn_deprecated_catch' can be used to suppress585warnings in selected modules.586587 ┌─ src/ibrowse_http_client.erl:588 │589 671 │ catch ibrowse_socks5:connect(Host1, Port, Options1, Sock_options, Timeout)590 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.591Compile directive 'nowarn_deprecated_catch' can be used to suppress592warnings in selected modules.593594 ┌─ src/ibrowse_http_client.erl:595 │596 825 │ }) when Pts /= done -> catch gen_tcp:close(Sock);597 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.598Compile directive 'nowarn_deprecated_catch' can be used to suppress599warnings in selected modules.600601 ┌─ src/ibrowse_http_client.erl:602 │603 826 │ do_close(#state{socket = Sock, is_ssl = true}) -> catch ssl:close(Sock);604 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.605Compile directive 'nowarn_deprecated_catch' can be used to suppress606warnings in selected modules.607608 ┌─ src/ibrowse_http_client.erl:609 │610 827 │ do_close(#state{socket = Sock, is_ssl = false}) -> catch gen_tcp:close(Sock).611 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.612Compile directive 'nowarn_deprecated_catch' can be used to suppress613warnings in selected modules.614615 ┌─ src/ibrowse_http_client.erl:616 │617 1041 │ catch StreamTo ! {ibrowse_async_raw_req, Raw_req}618 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.619Compile directive 'nowarn_deprecated_catch' can be used to suppress620warnings in selected modules.621622 ┌─ src/ibrowse_http_client.erl:623 │624 1403 │ case catch list_to_integer(V) of625 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.626Compile directive 'nowarn_deprecated_catch' can be used to suppress627warnings in selected modules.628629 ┌─ src/ibrowse_http_client.erl:630 │631 1977 │ catch StreamTo ! {ibrowse_async_headers, ReqId, StatCode, Headers_1};632 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.633Compile directive 'nowarn_deprecated_catch' can be used to suppress634warnings in selected modules.635636 ┌─ src/ibrowse_http_client.erl:637 │638 1979 │ catch StreamTo ! {ibrowse_async_headers, ReqId, Status_line, Raw_headers_1}639 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.640Compile directive 'nowarn_deprecated_catch' can be used to suppress641warnings in selected modules.642643 ┌─ src/ibrowse_http_client.erl:644 │645 2033 │ catch StreamTo ! {ibrowse_async_response, ReqId, Body_1}646 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.647Compile directive 'nowarn_deprecated_catch' can be used to suppress648warnings in selected modules.649650 ┌─ src/ibrowse_http_client.erl:651 │652 2035 │ catch StreamTo ! {ibrowse_async_response_end, ReqId},653 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.654Compile directive 'nowarn_deprecated_catch' can be used to suppress655warnings in selected modules.656657 ┌─ src/ibrowse_http_client.erl:658 │659 2051 │ catch StreamTo ! {ibrowse_async_response, ReqId, Msg_1},660 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.661Compile directive 'nowarn_deprecated_catch' can be used to suppress662warnings in selected modules.663664 ┌─ src/ibrowse_http_client.erl:665 │666 2058 │ catch StreamTo ! {ibrowse_async_response, ReqId, Msg_1}.667 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.668Compile directive 'nowarn_deprecated_catch' can be used to suppress669warnings in selected modules.670671 ┌─ src/ibrowse_http_client.erl:672 │673 2151 │ (catch ets:select_delete(Tid, [{{{'_', '_', '$1'},'_'},[{'==','$1',{const,self()}}],[true]}])).674 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.675Compile directive 'nowarn_deprecated_catch' can be used to suppress676warnings in selected modules.677678 ┌─ src/ibrowse_http_client.erl:679 │680 2165 │ catch ets:insert(Tid, {{Pipe_sz - 1, os:timestamp(), self()}, []}),681 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.682Compile directive 'nowarn_deprecated_catch' can be used to suppress683warnings in selected modules.684685 ┌─ src/ibrowse_http_client.erl:686 │687 2166 │ (catch ets:select_delete(Tid, [{{{'_', '$2', '$1'},'_'},688 │ ╰── Warning: 'catch ...' is deprecated; please use 'try ... catch ... end' instead.689Compile directive 'nowarn_deprecated_catch' can be used to suppress690warnings in selected modules.691692693==> ring_logger694Compiling 7 files (.ex)695Generated ring_logger app696==> shoehorn697Compiling 8 files (.ex)698Generated shoehorn app699==> plug700Compiling 1 file (.erl)701warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"702 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2703 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1704 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5705 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2706 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4707 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2708709Compiling 44 files (.ex)710 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 230 │ generated? = :erlang.system_info(:otp_release) >= '19'716 │ ~717 │718 └─ lib/plug/builder.ex:230:55719720 warning: "not expr1 in expr2" is deprecated, use "expr1 not in expr2" instead721 │722 422 │ when not state in @unsent do723 │ ~724 │725 └─ lib/plug/conn.ex:422:22726727 warning: "not expr1 in expr2" is deprecated, use "expr1 not in expr2" instead728 │729 446 │ when not state in @unsent do730 │ ~731 │732 └─ lib/plug/conn.ex:446:22733734 warning: "not expr1 in expr2" is deprecated, use "expr1 not in expr2" instead735 │736 506 │ when not state in @unsent do737 │ ~738 │739 └─ lib/plug/conn.ex:506:22740741 warning: "not expr1 in expr2" is deprecated, use "expr1 not in expr2" instead742 │743 1045 │ def put_session(%Conn{state: state}, _key, _value) when not state in @unsent,744 │ ~745 │746 └─ lib/plug/conn.ex:1045:69747748 warning: "not expr1 in expr2" is deprecated, use "expr1 not in expr2" instead749 │750 1069 │ def delete_session(%Conn{state: state}, _key) when not state in @unsent,751 │ ~752 │753 └─ lib/plug/conn.ex:1069:64754755 warning: "not expr1 in expr2" is deprecated, use "expr1 not in expr2" instead756 │757 1101 │ def configure_session(%Conn{state: state}, _opts) when not state in @unsent,758 │ ~759 │760 └─ lib/plug/conn.ex:1101:68761762 warning: "not expr1 in expr2" is deprecated, use "expr1 not in expr2" instead763 │764 1123 │ when not state in @unsent do765 │ ~766 │767 └─ lib/plug/conn.ex:1123:22768769 warning: Application.get_env/3 is discouraged in the module body, use Application.compile_env/3 instead770 │771 6 │ custom_statuses = Application.get_env(:plug, :statuses, %{})772 │ ~773 │774 └─ lib/plug/conn/status.ex:6:33: Plug.Conn.Status (module)775776 warning: ^^^ is deprecated. It is typically used as xor but it has the wrong precedence, use Bitwise.bxor/2 instead777 │778 65 │ mask(left, right, <<acc::binary, x ^^^ y>>)779 │ ~780 │781 └─ lib/plug/crypto.ex:65:40782783 warning: ^^^ is deprecated. It is typically used as xor but it has the wrong precedence, use Bitwise.bxor/2 instead784 │785 87 │ masked_compare(left, right, mask, acc ||| (x ^^^ (y ^^^ z)))786 │ ~787 │788 └─ lib/plug/crypto.ex:87:50789790 warning: ^^^ is deprecated. It is typically used as xor but it has the wrong precedence, use Bitwise.bxor/2 instead791 │792 87 │ masked_compare(left, right, mask, acc ||| (x ^^^ (y ^^^ z)))793 │ ~794 │795 └─ lib/plug/crypto.ex:87:57796797 warning: ^^^ is deprecated. It is typically used as xor but it has the wrong precedence, use Bitwise.bxor/2 instead798 │799 108 │ secure_compare(left, right, acc ||| (x ^^^ y))800 │ ~801 │802 └─ lib/plug/crypto.ex:108:44803804 warning: use Bitwise is deprecated. import Bitwise instead805 │806 6 │ use Bitwise807 │ ~~~~~~~~~~~808 │809 └─ lib/plug/crypto.ex:6: Plug.Crypto (module)810811 warning: use Bitwise is deprecated. import Bitwise instead812 │813 13 │ use Bitwise814 │ ~~~~~~~~~~~815 │816 └─ lib/plug/crypto/key_generator.ex:13: Plug.Crypto.KeyGenerator (module)817818 warning: the variable "max_length" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator819 │820 59 │ <<bin::binary-size(max_length), _::binary>> = key821 │ ~822 │823 └─ lib/plug/crypto/key_generator.ex:59:24: Plug.Crypto.KeyGenerator.generate/7824825 warning: unused require Bitwise826 │827 71 │ require Bitwise828 │ ~829 │830 └─ lib/plug/csrf_protection.ex:71:3831832 warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead833 │834 4 │ if Application.get_env(:plug, :mimes) do835 │ ~836 │837 └─ lib/plug/mime.ex:4:18: Plug.MIME (module)838839 warning: unused require Logger840 │841 32 │ require Logger842 │ ~843 │844 └─ lib/plug/request_id.ex:32:3845846 warning: calling super for GenServer callback handle_info/2 is deprecated847 │848 166 │ super(msg, state)849 │ ~850 │851 └─ lib/plug/upload.ex:166:5: Plug.Upload.handle_info/2852853 warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead854 │855 37 │ reraise e, System.stacktrace856 │ ~857 │858 └─ lib/plug/parsers/multipart.ex:37:27: Plug.Parsers.MULTIPART.parse/5859 └─ lib/plug/parsers/multipart.ex:39:73: Plug.Parsers.MULTIPART.parse/5860861 warning: Supervisor.Spec.worker/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead862 │863 12 │ worker(Plug.Upload, [])864 │ ~865 │866 └─ lib/plug/supervisor.ex:12:7: Plug.Supervisor.init/1867868 warning: Supervisor.Spec.supervise/2 is deprecated. Use the new child specifications outlined in the Supervisor module instead869 │870 16 │ supervise(children, strategy: :one_for_one)871 │ ~872 │873 └─ lib/plug/supervisor.ex:16:5: Plug.Supervisor.init/1874875 warning: Code.get_docs/2 is deprecated. Code.get_docs/2 always returns nil as its outdated documentation is no longer stored on BEAM files. Use Code.fetch_docs/1 instead876 │877 288 │ with docs when is_list(docs) <- Code.get_docs(module, :docs),878 │ ~879 │880 └─ lib/plug/debugger.ex:288:42: Plug.Debugger.get_doc/4881882 warning: Macro.to_string/2 is deprecated. Use Macro.to_string/1 instead883 │884 309 │ "#{kind} " <> Macro.to_string(code, &clause_match/2)885 │ ~886 │887 └─ lib/plug/debugger.ex:309:31: Plug.Debugger.get_clauses/3888889 warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead890 │891 115 │ __catch__(conn, kind, reason, System.stacktrace, opts)892 │ ~893 │894 └─ lib/plug/debugger.ex:115:42: Plug.Debugger.__catch__/4895896 warning: Code.ensure_compiled?/1 is deprecated. Use Code.ensure_compiled/1 instead (see the proper disclaimers in its docs)897 │898 210 │ if Code.ensure_compiled?(module) and function_exported?(module, :init, 1) do899 │ ~900 │901 └─ lib/plug/parsers.ex:210:15: Plug.Parsers.convert_parsers/2902903 warning: the following pattern will never match:904905 docs when is_list(docs) <- Code.get_docs(module, :docs)906907 because the right-hand side has type:908909 dynamic(nil)910911 where "docs" was given the type:912913 # type: empty_list() or non_empty_list(term(), term())914 # from: lib/plug/debugger.ex:288:20915 is_list(docs)916917 where "module" was given the type:918919 # type: dynamic()920 # from: lib/plug/debugger.ex:287:16921 module922923 type warning found at:924 │925 288 │ with docs when is_list(docs) <- Code.get_docs(module, :docs),926 │ ~927 │928 └─ lib/plug/debugger.ex:288:10: Plug.Debugger.get_doc/4929930 warning: MIME.valid?/1 is deprecated. Use MIME.extensions(type) != [] instead931 │932 27 │ MIME.valid?(type)933 │ ~934 │935 └─ lib/plug/mime.ex:27:10: Plug.MIME.valid?/1936937 warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead938 │939 82 │ __catch__(conn, kind, reason, reason, System.stacktrace, handle_errors)940 │ ~941 │942 └─ lib/plug/error_handler.ex:82:50: Plug.ErrorHandler.__catch__/4943944 warning: :crypto.block_encrypt/4 is undefined or private, use crypto:crypto_one_time/5, crypto:crypto_one_time_aead/6,7 or crypto:crypto_init + crypto:crypto_update + crypto:crypto_final instead945 │946 60 │ {cipher_text, cipher_tag} = :crypto.block_encrypt(:aes_gcm, key, iv, {aad, plain_text})947 │ ~948 │949 └─ lib/plug/crypto/message_encryptor.ex:60:41: Plug.Crypto.MessageEncryptor.aes128_gcm_encrypt/3950 └─ lib/plug/crypto/message_encryptor.ex:107:41: Plug.Crypto.MessageEncryptor.aes_gcm_key_wrap/3951 └─ lib/plug/crypto/message_encryptor.ex:299:13: Plug.Crypto.MessageEncryptor.encrypt_legacy/4952 └─ lib/plug/crypto/message_encryptor.ex:317:27: Plug.Crypto.MessageEncryptor.aes256_cbc_hmac_sha1_encrypt/3953954 warning: :crypto.hmac/3 is undefined or private, use crypto:mac/4 instead955 │956 44 │ signature = :crypto.hmac(:sha, key, plain_text)957 │ ~958 │959 └─ lib/plug/crypto/message_verifier.ex:44:26: Plug.Crypto.MessageVerifier.hmac_sha1_sign/2960 └─ lib/plug/crypto/message_verifier.ex:52:29: Plug.Crypto.MessageVerifier.hmac_sha1_verify/2961 └─ lib/plug/crypto/message_verifier.ex:74:26: Plug.Crypto.MessageVerifier.hmac_sha2_sign/3962 └─ lib/plug/crypto/message_verifier.ex:82:29: Plug.Crypto.MessageVerifier.hmac_sha2_verify/2963964 warning: :crypto.block_decrypt/4 is undefined or private, use crypto:crypto_one_time/5, crypto:crypto_one_time_aead/6,7 or crypto:crypto_init + crypto:crypto_update + crypto:crypto_final instead965 │966 82 │ :crypto.block_decrypt(:aes_gcm, key, iv, {aad, cipher_text, cipher_tag})967 │ ~968 │969 └─ lib/plug/crypto/message_encryptor.ex:82:21: Plug.Crypto.MessageEncryptor.aes128_gcm_decrypt/3970 └─ lib/plug/crypto/message_encryptor.ex:123:17: Plug.Crypto.MessageEncryptor.aes_gcm_key_unwrap/3971 └─ lib/plug/crypto/message_encryptor.ex:125:17: Plug.Crypto.MessageEncryptor.aes_gcm_key_unwrap/3972 └─ lib/plug/crypto/message_encryptor.ex:127:17: Plug.Crypto.MessageEncryptor.aes_gcm_key_unwrap/3973 └─ lib/plug/crypto/message_encryptor.ex:306:13: Plug.Crypto.MessageEncryptor.decrypt_legacy/4974 └─ lib/plug/crypto/message_encryptor.ex:334:17: Plug.Crypto.MessageEncryptor.aes256_cbc_hmac_sha1_decrypt/3975976 warning: :crypto.hmac/3 is undefined or private, use crypto:mac/4 instead977 │978 268 │ cipher_tag = Base.url_encode64(:crypto.hmac(:sha, sign_secret, cipher_text))979 │ ~980 │981 └─ lib/plug/crypto/message_encryptor.ex:268:44: Plug.Crypto.MessageEncryptor.encode_legacy_token/3982 └─ lib/plug/crypto/message_encryptor.ex:283:40: Plug.Crypto.MessageEncryptor.decode_legacy_token/2983984 warning: :crypto.hmac/3 is undefined or private, use crypto:mac/4 instead985 │986 78 │ &:crypto.hmac(digest, secret, &1)987 │ ~988 │989 └─ lib/plug/crypto/key_generator.ex:78:14: Plug.Crypto.KeyGenerator.mac_fun/2990991 warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead992 │993 21 │ stack = System.stacktrace994 │ ~995 │996 └─ lib/plug/conn/wrapper_error.ex:21:22: Plug.Conn.WrapperError.reraise/3997 └─ lib/plug/conn/wrapper_error.ex:26:40: Plug.Conn.WrapperError.reraise/3998999 warning: System.stacktrace/0 is deprecated. Use __STACKTRACE__ instead1000 │1001 21 │ stack = System.stacktrace()1002 │ ~1003 │1004 └─ lib/plug/adapters/cowboy/handler.ex:21:24: Plug.Adapters.Cowboy.Handler.upgrade/41005 └─ lib/plug/adapters/cowboy/handler.ex:26:24: Plug.Adapters.Cowboy.Handler.upgrade/41006 └─ lib/plug/adapters/cowboy/handler.ex:30:24: Plug.Adapters.Cowboy.Handler.upgrade/410071008 warning: a struct for Plug.Conn is expected on struct update:10091010 %Plug.Conn{1011 conn1012 | adapter: {Plug.Adapters.Test.Conn, state},1013 host: uri.host || conn.host || "www.example.com",1014 method: method,1015 owner: owner,1016 path_info: split_path(uri.path),1017 port: uri.port || 80,1018 peer: {{127, 0, 0, 1}, 111_317},1019 remote_ip: conn.remote_ip || {127, 0, 0, 1},1020 req_headers: req_headers,1021 request_path: uri.path,1022 query_string: query,1023 body_params: body_params || %Plug.Conn.Unfetched{aspect: :body_params},1024 params: params || %Plug.Conn.Unfetched{aspect: :params},1025 scheme: String.to_atom(String.downcase(uri.scheme || "http"))1026 }10271028 but got type:10291030 dynamic(%{..., req_headers: term()})10311032 where "conn" was given the type:10331034 # type: dynamic(%{..., req_headers: term()})1035 # from: lib/plug/adapters/test/conn.ex:15:481036 body_or_params(body_or_params, query, conn.req_headers)10371038 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"10391040 type warning found at:1041 │1042 19 │ %Plug.Conn{conn |1043 │ ~1044 │1045 └─ lib/plug/adapters/test/conn.ex:19:5: Plug.Adapters.Test.Conn.conn/410461047 warning: Enum.partition/2 is deprecated. Use Enum.split_with/2 instead1048 │1049 46 │ Enum.partition(cowboy_options, &is_tuple(&1) and tuple_size(&1) == 2)1050 │ ~1051 │1052 └─ lib/plug/adapters/cowboy.ex:46:12: Plug.Adapters.Cowboy.args/410531054Generated plug app1055==> uboot_env1056Compiling 5 files (.ex)1057Generated uboot_env app1058==> parallel_stream1059Compiling 11 files (.ex)1060 warning: Stream.chunk/4 is deprecated. Use Stream.chunk_every/4 instead1061 │1062 16 │ |> Stream.chunk(chunk_size, chunk_size, [])1063 │ ~1064 │1065 └─ lib/parallel_stream/producer.ex:16:15: ParallelStream.Producer.build!/410661067Generated parallel_stream app1068==> csv1069Compiling 10 files (.ex)1070 warning: outdented heredoc line. The contents inside the heredoc should be indented at the same level as the closing """. The following is forbidden:10711072 def text do1073 """1074 contents1075 """1076 end10771078 Instead make sure the contents are indented as much as the heredoc closing:10791080 def text do1081 """1082 contents1083 """1084 end10851086 The current heredoc line is indented too little1087 │1088 66 │ not terminate.\\n\\nEscape sequences are allowed to span up to 1000 lines. \1089 │ ~1090 │1091 └─ lib/csv.ex:66:810921093 warning: default arguments in protocol definitions is deprecated1094 │1095 11 │ def encode(data, env \\ [])1096 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~1097 │1098 └─ lib/csv/encoding/encode.ex:11: CSV.Encode (module)10991100 warning: protocols can only define functions without implementation via def/1, found: encode/11101 │1102 1 │ defprotocol CSV.Encode do1103 │ ~~~~~~~~~~~~~~~~~~~~~~~~~1104 │1105 └─ lib/csv/encoding/encode.ex:1: CSV.Encode (module)11061107 warning: String.strip/1 is deprecated. Use String.trim/1 instead1108 │1109 78 │ true -> field |> String.strip1110 │ ~1111 │1112 └─ lib/csv/decoding/parser.ex:78:31: CSV.Decoding.Parser.strip/211131114Generated csv app1115==> property_table1116Compiling 8 files (.ex)1117Generated property_table app1118==> nerves_uevent1119 CC uevent.o1120 LD uevent1121Compiling 5 files (.ex)1122Generated nerves_uevent app1123==> nerves_runtime1124Compiling 14 files (.ex)1125Generated nerves_runtime app1126==> toolshed1127Compiling 5 files (.ex)1128Generated toolshed app1129==> httpotion1130Compiling 1 file (.ex)1131Generated httpotion app1132==> bearcat_phoenix1133Compiling 3 files (.ex)1134 warning: unused import Plug.Conn1135 │1136 2 │ import Plug.Conn1137 │ ~1138 │1139 └─ lib/bearcat_phoenix.ex:2:311401141 warning: unused require BearcatPhoenix.Client.Course1142 │1143 3 │ require BearcatPhoenix.Client.Course1144 │ ~1145 │1146 └─ lib/bearcat_phoenix.ex:3:311471148 warning: unused require BearcatPhoenix.Client.Report1149 │1150 4 │ require BearcatPhoenix.Client.Report1151 │ ~1152 │1153 └─ lib/bearcat_phoenix.ex:4:311541155 warning: Poison.decode/1 is undefined (module Poison 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)1156 │1157 8 │ Poison.decode(response.body)1158 │ ~1159 │1160 └─ lib/bearcat_phoenix.ex:8:14: BearcatPhoenix.parse_response/111611162 warning: Plug.Conn.Query.encode/1 is undefined (module Plug.Conn.Query is not available or is yet to be defined)1163 │1164 15 │ Plug.Conn.Query.encode(params)1165 │ ~1166 │1167 └─ lib/bearcat_phoenix.ex:15:21: BearcatPhoenix.encode_params/111681169both :extra_applications and :applications was found in your mix.exs. You most likely want to remove the :applications key, as all applications are derived from your dependencies1170Generated bearcat_phoenix app1171==> nerves_compatibility_test1172Compiling 2 files (.ex)1173Generated nerves_compatibility_test app1174|nerves| Building OTP Release...11751176* [Nerves] validating vm.args1177* skipping runtime configuration (config/runtime.exs not found)1178* creating _build/rpi4/rel/nerves_compatibility_test/releases/0.1.0/vm.args1179Updating base firmware image with Erlang release...1180Copying rootfs_overlay: /work/proj/_build/rpi4/nerves/rootfs_overlay1181Copying rootfs_overlay: /work/proj/rootfs_overlay1182Building /work/proj/_build/rpi4/nerves/images/nerves_compatibility_test.fw...1183Firmware UUID: spy-hood (d7600742-756d-56d9-6f06-ab1bf1ead1de)1184Firmware built successfully! 🎉11851186Now you may install it to a MicroSD card using `mix burn` or upload it1187to a device with `mix upload` or `mix firmware.gen.script`+`./upload.sh`.11881189==> nerves1190 warning: found quoted keyword "coveralls" but the quotes are not required. Note that keywords are always atoms, even when quoted. Similar to atoms, keywords made exclusively of ASCII letters, numbers, and underscores and not beginning with a number do not require quotes1191 │1192 18 │ preferred_cli_env: ["coveralls": :test, "coveralls.detail": :test, "coveralls.post": :test]1193 │ ~1194 │1195 └─ /work/proj/deps_rpi4/csv/mix.exs:18:2911961197 warning: String.strip/1 is deprecated. Use String.trim/1 instead1198 │1199 4 │ @version File.read!("VERSION") |> String.strip1200 │ ~1201 │1202 └─ /work/proj/deps_rpi4/poison/mix.exs:4:44: Poison.Mixfile (module)12031204 warning: found quoted keyword "coveralls" but the quotes are not required. Note that keywords are always atoms, even when quoted. Similar to atoms, keywords made exclusively of ASCII letters, numbers, and underscores and not beginning with a number do not require quotes1205 │1206 17 │ preferred_cli_env: ["coveralls": :test, "coveralls.detail": :test, "coveralls.post": :test]1207 │ ~1208 │1209 └─ /work/proj/deps_rpi4/parallel_stream/mix.exs:17:2912101211==> nerves_compatibility_test12121213Nerves environment1214 MIX_TARGET: rpi41215 MIX_ENV: prod12161217==> bearcat_phoenix1218Compiling 3 files (.ex)1219 error: module Plug.Conn is not loaded and could not be found1220 │1221 2 │ import Plug.Conn1222 │ ^1223 │1224 └─ lib/bearcat_phoenix.ex:2:3: BearcatPhoenix (module)122512261227== Compilation error in file lib/bearcat_phoenix.ex ==1228** (CompileError) lib/bearcat_phoenix.ex: cannot compile module BearcatPhoenix (errors have been logged)12291230could not compile dependency :bearcat_phoenix, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile bearcat_phoenix --force", update it with "mix deps.update bearcat_phoenix" or clean it with "mix deps.clean bearcat_phoenix"