Build log
nerves_system_rpi4
membrane_rtc_engine_hls 0.10.0 · fail · run membrane_rtc_engine_hls-0.10.0-1790995953968
2977 of 2977 lines
1Resolving Hex dependencies...2Resolution completed in 0.758s3Unchanged:4 bimap 1.3.05 bunch 1.6.46 bunch_native 0.5.27 bundlex 1.5.88 circular_buffer 1.1.09 coerce 1.0.210 crc 0.11.011 elixir_make 0.10.012 elixir_uuid 1.2.113 ex_dtls 0.18.114 ex_ice 0.13.015 ex_libsrtp 0.7.416 ex_rtcp 0.4.217 ex_rtp 0.4.118 ex_sdp 1.3.019 ex_stun 0.2.120 ex_turn 0.2.321 ex_webrtc 0.15.122 finch 0.24.023 fishjam_protos 0.4.024 heap 2.0.225 hpax 1.1.026 interactive_cmd 0.1.427 jason 1.4.528 logger_backends 1.0.129 membrane_aac_fdk_plugin 0.18.1530 membrane_aac_format 0.8.131 membrane_aac_plugin 0.18.232 membrane_cmaf_format 0.7.233 membrane_common_c 0.16.234 membrane_core 1.2.735 membrane_file_plugin 0.17.536 membrane_funnel_plugin 0.9.237 membrane_h264_ffmpeg_plugin 0.31.338 membrane_h264_format 0.6.139 membrane_h265_format 0.2.040 membrane_h26x_plugin 0.10.941 membrane_http_adaptive_stream_plugin 0.18.542 membrane_mp4_format 0.8.143 membrane_mp4_plugin 0.35.3 VULNERABLE!44 EEF-CVE-2026-53423 (MEDIUM)45 aka: CVE-2026-53423, GHSA-43hj-fxwj-49qw46 Unauthenticated denial-of-service via BEAM atom table exhaustion in membrane_mp4_plugin47 https://osv.dev/vulnerability/EEF-CVE-2026-5342348 membrane_opus_format 0.3.249 membrane_opus_plugin 0.20.850 membrane_precompiled_dependency_provider 0.2.451 membrane_raw_audio_format 0.12.352 membrane_raw_video_format 0.3.053 membrane_rtc_engine 0.25.054 membrane_rtc_engine_ex_webrtc 0.2.055 membrane_rtc_engine_hls 0.10.056 membrane_rtp_format 0.10.057 membrane_rtp_h264_plugin 0.20.258 membrane_rtp_plugin 0.30.059 membrane_rtp_vp8_plugin 0.9.460 membrane_tee_plugin 0.12.061 membrane_telemetry_metrics 0.1.362 membrane_timestamp_queue 0.2.363 membrane_vp8_format 0.5.164 mime 2.0.765 mint 1.11.066 nerves 2.0.0-pre.267 nerves_discovery 0.1.568 nerves_logging 0.2.469 nerves_runtime 0.13.1370 nerves_system_bbb 2.30.271 nerves_system_br 1.34.472 nerves_system_mangopi_mq_pro 0.17.273 nerves_system_qemu_aarch64 0.4.274 nerves_system_rpi0 2.1.275 nerves_system_rpi4 2.1.276 nerves_system_rpi5 2.1.277 nerves_system_trellis 0.5.078 nerves_system_x86_64 1.34.279 nerves_toolchain_aarch64_nerves_linux_gnu 15.3.180 nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.181 nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.182 nerves_toolchain_riscv64_nerves_linux_gnu 15.3.183 nerves_toolchain_x86_64_nerves_linux_musl 15.3.184 nerves_uevent 0.1.785 nimble_options 1.1.186 nimble_pool 1.1.087 numbers 5.2.588 property_table 0.3.489 protobuf 0.15.0 VULNERABLE!90 GHSA-rv48-qqj5-crxg (HIGH)91 aka: CVE-2026-5445192 Protobuf: Unbounded recursion depth in embedded-message decoding93 https://osv.dev/vulnerability/GHSA-rv48-qqj5-crxg94 qex 0.5.295 ratio 3.0.296 req 0.7.497 ring_logger 0.11.798 shmex 0.5.299 statistics 0.6.3100 tablet 0.3.3101 telemetry 1.4.2102 telemetry_metrics 1.2.0103 toolshed 0.5.0104 uboot_env 1.0.2105 unifex 1.1.2106 zarex 1.0.6107* Getting membrane_rtc_engine_hls (Hex package)108* Getting nerves (Hex package)109* Getting ring_logger (Hex package)110* Getting toolshed (Hex package)111* Getting nerves_runtime (Hex package)112* Getting nerves_system_bbb (Hex package)113* Getting nerves_system_mangopi_mq_pro (Hex package)114* Getting nerves_system_qemu_aarch64 (Hex package)115* Getting nerves_system_rpi0 (Hex package)116* Getting nerves_system_rpi4 (Hex package)117* Getting nerves_system_rpi5 (Hex package)118* Getting nerves_system_trellis (Hex package)119* Getting nerves_system_x86_64 (Hex package)120* Getting nerves_system_br (Hex package)121* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)122* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)123* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)124* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)125* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)126* Getting nerves_logging (Hex package)127* Getting nerves_uevent (Hex package)128* Getting uboot_env (Hex package)129* Getting elixir_make (Hex package)130* Getting property_table (Hex package)131* Getting circular_buffer (Hex package)132* Getting interactive_cmd (Hex package)133* Getting nerves_discovery (Hex package)134* Getting tablet (Hex package)135* Getting membrane_aac_fdk_plugin (Hex package)136* Getting membrane_aac_plugin (Hex package)137* Getting membrane_core (Hex package)138* Getting membrane_h264_ffmpeg_plugin (Hex package)139* Getting membrane_h26x_plugin (Hex package)140* Getting membrane_http_adaptive_stream_plugin (Hex package)141* Getting membrane_opus_plugin (Hex package)142* Getting membrane_raw_audio_format (Hex package)143* Getting membrane_raw_video_format (Hex package)144* Getting membrane_rtc_engine (Hex package)145* Getting membrane_rtc_engine_ex_webrtc (Hex package)146* Getting elixir_uuid (Hex package)147* Getting ex_sdp (Hex package)148* Getting ex_webrtc (Hex package)149* Getting fishjam_protos (Hex package)150* Getting jason (Hex package)151* Getting membrane_rtp_format (Hex package)152* Getting membrane_rtp_h264_plugin (Hex package)153* Getting membrane_rtp_plugin (Hex package)154* Getting membrane_rtp_vp8_plugin (Hex package)155* Getting membrane_vp8_format (Hex package)156* Getting bimap (Hex package)157* Getting bunch (Hex package)158* Getting ex_rtcp (Hex package)159* Getting ex_rtp (Hex package)160* Getting heap (Hex package)161* Getting membrane_funnel_plugin (Hex package)162* Getting membrane_telemetry_metrics (Hex package)163* Getting qex (Hex package)164* Getting telemetry (Hex package)165* Getting telemetry_metrics (Hex package)166* Getting membrane_h264_format (Hex package)167* Getting protobuf (Hex package)168* Getting crc (Hex package)169* Getting ex_dtls (Hex package)170* Getting ex_ice (Hex package)171* Getting ex_libsrtp (Hex package)172* Getting bundlex (Hex package)173* Getting membrane_precompiled_dependency_provider (Hex package)174* Getting unifex (Hex package)175* Getting shmex (Hex package)176* Getting bunch_native (Hex package)177* Getting req (Hex package)178* Getting finch (Hex package)179* Getting mime (Hex package)180* Getting mint (Hex package)181* Getting nimble_options (Hex package)182* Getting nimble_pool (Hex package)183* Getting hpax (Hex package)184* Getting zarex (Hex package)185* Getting ex_stun (Hex package)186* Getting ex_turn (Hex package)187* Getting statistics (Hex package)188* Getting membrane_common_c (Hex package)189* Getting membrane_opus_format (Hex package)190* Getting membrane_mp4_plugin (Hex package)191* Getting membrane_tee_plugin (Hex package)192* Getting membrane_aac_format (Hex package)193* Getting membrane_cmaf_format (Hex package)194* Getting membrane_file_plugin (Hex package)195* Getting membrane_h265_format (Hex package)196* Getting membrane_mp4_format (Hex package)197* Getting membrane_timestamp_queue (Hex package)198* Getting logger_backends (Hex package)199* Getting ratio (Hex package)200* Getting numbers (Hex package)201* Getting coerce (Hex package)202Found packages with security advisories, see above for details203==> nerves_system_br204Generated nerves_system_br app205==> membrane_mp4_format206Compiling 1 file (.ex)207Generated membrane_mp4_format app208==> mime209Compiling 1 file (.ex)210Generated mime app211==> circular_buffer212Compiling 1 file (.ex)213Generated circular_buffer app214==> nimble_options215Compiling 3 files (.ex)216Generated nimble_options app217==> membrane_vp8_format218Compiling 1 file (.ex)219Generated membrane_vp8_format app220==> jason221Compiling 10 files (.ex)222Generated jason app223==> logger_backends224Compiling 7 files (.ex)225Generated logger_backends app226 C checksum_xor.c227 C crc_8.c228 C crc_algorithm.c229 C crc_model.c230 C crc_nif.c231 C crc_resource.c232 C xnif_slice.c233 LD crc_nif.so234==> crc235Compiling 7 files (.erl)236Compiling 3 files (.ex)237Generated crc app238==> hpax239Compiling 4 files (.ex)240Generated hpax app241==> mint242Compiling 1 file (.erl)243Compiling 21 files (.ex)244Generated mint app245==> coerce246Compiling 3 files (.ex)247Generated coerce app248==> bunch249Compiling 19 files (.ex)250Generated bunch app251==> ex_rtcp252Compiling 14 files (.ex)253Generated ex_rtcp app254==> tablet255Compiling 2 files (.ex)256Generated tablet app257warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"258 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2259 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1260 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5261 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2262 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4263 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2264265==> protobuf266Compiling 46 files (.ex)267 warning: the variable "literal_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator268 │269 157 │ <<^literal::bytes-size(literal_size), rest::binary>> -> rest270 │ ~271 │272 └─ lib/protobuf/json/rfc3339.ex:157:30: Protobuf.JSON.RFC3339.eat_literal/2273274 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 operator275 │276 182 │ <<digits::bytes-size(count), rest::binary>> ->277 │ ~278 │279 └─ lib/protobuf/json/rfc3339.ex:182:28: Protobuf.JSON.RFC3339.eat_digits/2280281 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator282 │283 137 │ <<_skip::bytes-size(value), rest::bits>> = rest284 │ ~285 │286 └─ lib/protobuf/decoder.ex:137:25: Protobuf.Decoder.skip_delimited/4287288 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator289 │290 137 │ <<_skip::bytes-size(value), rest::bits>> = rest291 │ ~292 │293 └─ lib/protobuf/decoder.ex:137:25: Protobuf.Decoder.skip_delimited/4294295 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator296 │297 137 │ <<_skip::bytes-size(value), rest::bits>> = rest298 │ ~299 │300 └─ lib/protobuf/decoder.ex:137:25: Protobuf.Decoder.skip_delimited/4301302 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator303 │304 137 │ <<_skip::bytes-size(value), rest::bits>> = rest305 │ ~306 │307 └─ lib/protobuf/decoder.ex:137:25: Protobuf.Decoder.skip_delimited/4308309 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator310 │311 137 │ <<_skip::bytes-size(value), rest::bits>> = rest312 │ ~313 │314 └─ lib/protobuf/decoder.ex:137:25: Protobuf.Decoder.skip_delimited/4315316 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator317 │318 137 │ <<_skip::bytes-size(value), rest::bits>> = rest319 │ ~320 │321 └─ lib/protobuf/decoder.ex:137:25: Protobuf.Decoder.skip_delimited/4322323 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator324 │325 137 │ <<_skip::bytes-size(value), rest::bits>> = rest326 │ ~327 │328 └─ lib/protobuf/decoder.ex:137:25: Protobuf.Decoder.skip_delimited/4329330 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator331 │332 137 │ <<_skip::bytes-size(value), rest::bits>> = rest333 │ ~334 │335 └─ lib/protobuf/decoder.ex:137:25: Protobuf.Decoder.skip_delimited/4336337 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator338 │339 137 │ <<_skip::bytes-size(value), rest::bits>> = rest340 │ ~341 │342 └─ lib/protobuf/decoder.ex:137:25: Protobuf.Decoder.skip_delimited/4343344 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator345 │346 137 │ <<_skip::bytes-size(value), rest::bits>> = rest347 │ ~348 │349 └─ lib/protobuf/decoder.ex:137:25: Protobuf.Decoder.skip_delimited/4350351 warning: the variable "length" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator352 │353 143 │ <<_::bits-size(length), rest::bits>> -> rest354 │ ~355 │356 └─ lib/protobuf/decoder.ex:143:22: Protobuf.Decoder.skip_bits/2357358 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator359 │360 156 │ <<bytes::bytes-size(value), rest::bits>> = rest361 │ ~362 │363 └─ lib/protobuf/decoder.ex:156:27: Protobuf.Decoder.decode_delimited/4364365 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator366 │367 156 │ <<bytes::bytes-size(value), rest::bits>> = rest368 │ ~369 │370 └─ lib/protobuf/decoder.ex:156:27: Protobuf.Decoder.decode_delimited/4371372 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator373 │374 156 │ <<bytes::bytes-size(value), rest::bits>> = rest375 │ ~376 │377 └─ lib/protobuf/decoder.ex:156:27: Protobuf.Decoder.decode_delimited/4378379 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator380 │381 156 │ <<bytes::bytes-size(value), rest::bits>> = rest382 │ ~383 │384 └─ lib/protobuf/decoder.ex:156:27: Protobuf.Decoder.decode_delimited/4385386 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator387 │388 156 │ <<bytes::bytes-size(value), rest::bits>> = rest389 │ ~390 │391 └─ lib/protobuf/decoder.ex:156:27: Protobuf.Decoder.decode_delimited/4392393 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator394 │395 156 │ <<bytes::bytes-size(value), rest::bits>> = rest396 │ ~397 │398 └─ lib/protobuf/decoder.ex:156:27: Protobuf.Decoder.decode_delimited/4399400 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator401 │402 156 │ <<bytes::bytes-size(value), rest::bits>> = rest403 │ ~404 │405 └─ lib/protobuf/decoder.ex:156:27: Protobuf.Decoder.decode_delimited/4406407 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator408 │409 156 │ <<bytes::bytes-size(value), rest::bits>> = rest410 │ ~411 │412 └─ lib/protobuf/decoder.ex:156:27: Protobuf.Decoder.decode_delimited/4413414 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator415 │416 156 │ <<bytes::bytes-size(value), rest::bits>> = rest417 │ ~418 │419 └─ lib/protobuf/decoder.ex:156:27: Protobuf.Decoder.decode_delimited/4420421 warning: the variable "value" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator422 │423 156 │ <<bytes::bytes-size(value), rest::bits>> = rest424 │ ~425 │426 └─ lib/protobuf/decoder.ex:156:27: Protobuf.Decoder.decode_delimited/4427428 warning: a struct for Protobuf.Protoc.Context is expected on struct update:429430 %Protobuf.Protoc.Context{431 Protobuf.Protoc.Context.append_comment_path(ctx, <<"6.", to_string(index)::binary>>)432 | namespace: ctx.namespace ++ [Macro.camelize(desc.name)]433 }434435 but got type:436437 dynamic(%{..., current_comment_path: term()})438439 where "ctx" was given the types:440441 # type: dynamic(%Protobuf.Protoc.Context{})442 # from: lib/protobuf/protoc/generator/extension.ex:84:48443 %Protobuf.Protoc.Context{} = ctx444445 # type: dynamic(%Protobuf.Protoc.Context{current_comment_path: binary()})446 # from: lib/protobuf/protoc/generator/extension.ex:88:31447 Protobuf.Protoc.Context.append_comment_path(ctx, <<"7.", to_string(index)::binary>>)448449 where "index" was given the type:450451 # type: dynamic()452 # from: lib/protobuf/protoc/generator/extension.ex453 {desc, index}454455 you must assign "Protobuf.Protoc.Context.append_comment_path(ctx, <<"6.", String.Chars.to_string(index)::binary>>)" to variable and pattern match on "%Protobuf.Protoc.Context{}"456457 type warning found at:458 │459 90 │ %Context{460 │ ~461 │462 └─ lib/protobuf/protoc/generator/extension.ex:90:11: Protobuf.Protoc.Generator.Extension.get_extensions_from_messages/3463464 warning: a struct for Protobuf.Protoc.Context is expected on struct update:465466 %Protobuf.Protoc.Context{467 ctx468 | comments: Protobuf.Protoc.Generator.Comment.parse(desc),469 syntax: syntax(desc.syntax),470 package: desc.package,471 dep_type_mapping: get_dep_type_mapping(ctx, desc.dependency, desc.name)472 }473474 but got type:475476 dynamic()477478 where "ctx" was given the type:479480 # type: dynamic()481 # from: lib/protobuf/protoc/generator.ex:35:36482 ctx483484 when defining the variable "ctx", you must also pattern match on "%Protobuf.Protoc.Context{}"485486 type warning found at:487 │488 37 │ %Context{489 │ ~490 │491 └─ lib/protobuf/protoc/generator.ex:37:7: Protobuf.Protoc.Generator.generate_module_definitions/2492493 warning: a struct for Protobuf.Protoc.Context is expected on struct update:494495 %Protobuf.Protoc.Context{ctx | plugins: String.split(plugins, "+")}496497 but got type:498499 dynamic()500501 where "ctx" was given the type:502503 # type: dynamic()504 # from: lib/protobuf/protoc/cli.ex:105:43505 ctx506507 when defining the variable "ctx", you must also pattern match on "%Protobuf.Protoc.Context{}"508509 type warning found at:510 │511 106 │ %Context{ctx | plugins: String.split(plugins, "+")}512 │ ~513 │514 └─ lib/protobuf/protoc/cli.ex:106:5: Protobuf.Protoc.CLI.parse_param/2515516 warning: a struct for Protobuf.Protoc.Context is expected on struct update:517518 %Protobuf.Protoc.Context{ctx | gen_descriptors?: true}519520 but got type:521522 dynamic()523524 where "ctx" was given the type:525526 # type: dynamic()527 # from: lib/protobuf/protoc/cli.ex:109:49528 ctx529530 when defining the variable "ctx", you must also pattern match on "%Protobuf.Protoc.Context{}"531532 type warning found at:533 │534 112 │ %Context{ctx | gen_descriptors?: true}535 │ ~536 │537 └─ lib/protobuf/protoc/cli.ex:112:9: Protobuf.Protoc.CLI.parse_param/2538539 warning: this clause of defp add_json_name_to_opts/3 is never used (or it will always fail/warn when invoked)540 │541 348 │ defp add_json_name_to_opts(opts, _syntax, _props), do: opts542 │ ~543 │544 └─ lib/protobuf/protoc/generator/message.ex:348:8: Protobuf.Protoc.Generator.Message.add_json_name_to_opts/3545546 warning: a struct for Protobuf.Protoc.Context is expected on struct update:547548 %Protobuf.Protoc.Context{ctx | package_prefix: package}549550 but got type:551552 dynamic()553554 where "ctx" was given the type:555556 # type: dynamic()557 # from: lib/protobuf/protoc/cli.ex:119:50558 ctx559560 when defining the variable "ctx", you must also pattern match on "%Protobuf.Protoc.Context{}"561562 type warning found at:563 │564 123 │ %Context{ctx | package_prefix: package}565 │ ~566 │567 └─ lib/protobuf/protoc/cli.ex:123:7: Protobuf.Protoc.CLI.parse_param/2568569 warning: a struct for Protobuf.Protoc.Context is expected on struct update:570571 %Protobuf.Protoc.Context{ctx | transform_module: Module.concat([module])}572573 but got type:574575 dynamic()576577 where "ctx" was given the type:578579 # type: dynamic()580 # from: lib/protobuf/protoc/cli.ex:127:51581 ctx582583 when defining the variable "ctx", you must also pattern match on "%Protobuf.Protoc.Context{}"584585 type warning found at:586 │587 128 │ %Context{ctx | transform_module: Module.concat([module])}588 │ ~589 │590 └─ lib/protobuf/protoc/cli.ex:128:5: Protobuf.Protoc.CLI.parse_param/2591592 warning: a struct for Protobuf.Protoc.Context is expected on struct update:593594 %Protobuf.Protoc.Context{ctx | one_file_per_module?: true}595596 but got type:597598 dynamic()599600 where "ctx" was given the type:601602 # type: dynamic()603 # from: lib/protobuf/protoc/cli.ex:131:53604 ctx605606 when defining the variable "ctx", you must also pattern match on "%Protobuf.Protoc.Context{}"607608 type warning found at:609 │610 134 │ %Context{ctx | one_file_per_module?: true}611 │ ~612 │613 └─ lib/protobuf/protoc/cli.ex:134:9: Protobuf.Protoc.CLI.parse_param/2614615 warning: a struct for Protobuf.Protoc.Context is expected on struct update:616617 %Protobuf.Protoc.Context{ctx | include_docs?: true}618619 but got type:620621 dynamic()622623 where "ctx" was given the type:624625 # type: dynamic()626 # from: lib/protobuf/protoc/cli.ex:141:46627 ctx628629 when defining the variable "ctx", you must also pattern match on "%Protobuf.Protoc.Context{}"630631 type warning found at:632 │633 144 │ %Context{ctx | include_docs?: true}634 │ ~635 │636 └─ lib/protobuf/protoc/cli.ex:144:9: Protobuf.Protoc.CLI.parse_param/2637638 warning: a struct for Protobuf.FieldProps is expected on struct update:639640 %Protobuf.FieldProps{acc | optional?: optional?}641642 but got type:643644 dynamic()645646 where "acc" was given the type:647648 # type: dynamic()649 # from: lib/protobuf/dsl.ex:328:31650 acc651652 when defining the variable "acc", you must also pattern match on "%Protobuf.FieldProps{}"653654 type warning found at:655 │656 329 │ %FieldProps{acc | optional?: optional?}657 │ ~658 │659 └─ lib/protobuf/dsl.ex:329:9: Protobuf.DSL.parse_field_opts_to_field_props/2660661 warning: a struct for Protobuf.FieldProps is expected on struct update:662663 %Protobuf.FieldProps{acc | proto3_optional?: proto3_optional?}664665 but got type:666667 dynamic()668669 where "acc" was given the type:670671 # type: dynamic()672 # from: lib/protobuf/dsl.ex:331:45673 acc674675 when defining the variable "acc", you must also pattern match on "%Protobuf.FieldProps{}"676677 type warning found at:678 │679 332 │ %FieldProps{acc | proto3_optional?: proto3_optional?}680 │ ~681 │682 └─ lib/protobuf/dsl.ex:332:9: Protobuf.DSL.parse_field_opts_to_field_props/2683684 warning: a struct for Protobuf.FieldProps is expected on struct update:685686 %Protobuf.FieldProps{acc | required?: required?}687688 but got type:689690 dynamic()691692 where "acc" was given the type:693694 # type: dynamic()695 # from: lib/protobuf/dsl.ex:334:31696 acc697698 when defining the variable "acc", you must also pattern match on "%Protobuf.FieldProps{}"699700 type warning found at:701 │702 335 │ %FieldProps{acc | required?: required?}703 │ ~704 │705 └─ lib/protobuf/dsl.ex:335:9: Protobuf.DSL.parse_field_opts_to_field_props/2706707 warning: a struct for Protobuf.FieldProps is expected on struct update:708709 %Protobuf.FieldProps{acc | enum?: enum?}710711 but got type:712713 dynamic()714715 where "acc" was given the type:716717 # type: dynamic()718 # from: lib/protobuf/dsl.ex:337:23719 acc720721 when defining the variable "acc", you must also pattern match on "%Protobuf.FieldProps{}"722723 type warning found at:724 │725 338 │ %FieldProps{acc | enum?: enum?}726 │ ~727 │728 └─ lib/protobuf/dsl.ex:338:9: Protobuf.DSL.parse_field_opts_to_field_props/2729730 warning: a struct for Protobuf.FieldProps is expected on struct update:731732 %Protobuf.FieldProps{acc | map?: map?}733734 but got type:735736 dynamic()737738 where "acc" was given the type:739740 # type: dynamic()741 # from: lib/protobuf/dsl.ex:340:21742 acc743744 when defining the variable "acc", you must also pattern match on "%Protobuf.FieldProps{}"745746 type warning found at:747 │748 341 │ %FieldProps{acc | map?: map?}749 │ ~750 │751 └─ lib/protobuf/dsl.ex:341:9: Protobuf.DSL.parse_field_opts_to_field_props/2752753 warning: a struct for Protobuf.FieldProps is expected on struct update:754755 %Protobuf.FieldProps{acc | repeated?: repeated?}756757 but got type:758759 dynamic()760761 where "acc" was given the type:762763 # type: dynamic()764 # from: lib/protobuf/dsl.ex:343:31765 acc766767 when defining the variable "acc", you must also pattern match on "%Protobuf.FieldProps{}"768769 type warning found at:770 │771 344 │ %FieldProps{acc | repeated?: repeated?}772 │ ~773 │774 └─ lib/protobuf/dsl.ex:344:9: Protobuf.DSL.parse_field_opts_to_field_props/2775776 warning: a struct for Protobuf.FieldProps is expected on struct update:777778 %Protobuf.FieldProps{acc | embedded?: embedded}779780 but got type:781782 dynamic()783784 where "acc" was given the type:785786 # type: dynamic()787 # from: lib/protobuf/dsl.ex:346:30788 acc789790 when defining the variable "acc", you must also pattern match on "%Protobuf.FieldProps{}"791792 type warning found at:793 │794 347 │ %FieldProps{acc | embedded?: embedded}795 │ ~796 │797 └─ lib/protobuf/dsl.ex:347:9: Protobuf.DSL.parse_field_opts_to_field_props/2798799 warning: a struct for Protobuf.FieldProps is expected on struct update:800801 %Protobuf.FieldProps{acc | deprecated?: deprecated?}802803 but got type:804805 dynamic()806807 where "acc" was given the type:808809 # type: dynamic()810 # from: lib/protobuf/dsl.ex:349:35811 acc812813 when defining the variable "acc", you must also pattern match on "%Protobuf.FieldProps{}"814815 type warning found at:816 │817 350 │ %FieldProps{acc | deprecated?: deprecated?}818 │ ~819 │820 └─ lib/protobuf/dsl.ex:350:9: Protobuf.DSL.parse_field_opts_to_field_props/2821822 warning: a struct for Protobuf.FieldProps is expected on struct update:823824 %Protobuf.FieldProps{acc | packed?: packed?}825826 but got type:827828 dynamic()829830 where "acc" was given the type:831832 # type: dynamic()833 # from: lib/protobuf/dsl.ex:352:27834 acc835836 when defining the variable "acc", you must also pattern match on "%Protobuf.FieldProps{}"837838 type warning found at:839 │840 353 │ %FieldProps{acc | packed?: packed?}841 │ ~842 │843 └─ lib/protobuf/dsl.ex:353:9: Protobuf.DSL.parse_field_opts_to_field_props/2844845 warning: a struct for Protobuf.FieldProps is expected on struct update:846847 %Protobuf.FieldProps{acc | type: type}848849 but got type:850851 dynamic()852853 where "acc" was given the type:854855 # type: dynamic()856 # from: lib/protobuf/dsl.ex:355:22857 acc858859 when defining the variable "acc", you must also pattern match on "%Protobuf.FieldProps{}"860861 type warning found at:862 │863 356 │ %FieldProps{acc | type: type}864 │ ~865 │866 └─ lib/protobuf/dsl.ex:356:9: Protobuf.DSL.parse_field_opts_to_field_props/2867868 warning: a struct for Protobuf.FieldProps is expected on struct update:869870 %Protobuf.FieldProps{acc | default: default}871872 but got type:873874 dynamic()875876 where "acc" was given the type:877878 # type: dynamic()879 # from: lib/protobuf/dsl.ex:358:28880 acc881882 when defining the variable "acc", you must also pattern match on "%Protobuf.FieldProps{}"883884 type warning found at:885 │886 359 │ %FieldProps{acc | default: default}887 │ ~888 │889 └─ lib/protobuf/dsl.ex:359:9: Protobuf.DSL.parse_field_opts_to_field_props/2890891 warning: a struct for Protobuf.FieldProps is expected on struct update:892893 %Protobuf.FieldProps{acc | oneof: oneof}894895 but got type:896897 dynamic()898899 where "acc" was given the type:900901 # type: dynamic()902 # from: lib/protobuf/dsl.ex:361:24903 acc904905 when defining the variable "acc", you must also pattern match on "%Protobuf.FieldProps{}"906907 type warning found at:908 │909 362 │ %FieldProps{acc | oneof: oneof}910 │ ~911 │912 └─ lib/protobuf/dsl.ex:362:9: Protobuf.DSL.parse_field_opts_to_field_props/2913914 warning: a struct for Protobuf.FieldProps is expected on struct update:915916 %Protobuf.FieldProps{acc | json_name: json_name}917918 but got type:919920 dynamic()921922 where "acc" was given the type:923924 # type: dynamic()925 # from: lib/protobuf/dsl.ex:364:32926 acc927928 when defining the variable "acc", you must also pattern match on "%Protobuf.FieldProps{}"929930 type warning found at:931 │932 365 │ %FieldProps{acc | json_name: json_name}933 │ ~934 │935 └─ lib/protobuf/dsl.ex:365:9: Protobuf.DSL.parse_field_opts_to_field_props/2936937 warning: a struct for Protobuf.FieldProps is expected on struct update:938939 %Protobuf.FieldProps{props | json_name: props.name}940941 but got type:942943 dynamic(not %Protobuf.FieldProps{json_name: binary()})944945 where "props" was given the type:946947 # type: dynamic(not %Protobuf.FieldProps{json_name: binary()})948 # from: lib/protobuf/dsl.ex:390:22949 props950951 when defining the variable "props", you must also pattern match on "%Protobuf.FieldProps{}"952953 type warning found at:954 │955 390 │ defp cal_json_name(props), do: %FieldProps{props | json_name: props.name}956 │ ~957 │958 └─ lib/protobuf/dsl.ex:390:34: Protobuf.DSL.cal_json_name/1959960 warning: a struct for Protobuf.FieldProps is expected on struct update:961962 %Protobuf.FieldProps{props | packed?: false}963964 but got type:965966 dynamic(967 (%Protobuf.FieldProps{repeated?: true} and not %Protobuf.FieldProps{packed?: boolean()}) or968 (map() and969 not (%Protobuf.FieldProps{repeated?: true} or %Protobuf.FieldProps{packed?: boolean()})) or970 atom() or bitstring() or empty_list() or float() or fun() or integer() or971 non_empty_list(term(), term()) or pid() or port() or reference() or {...}972 )973974 where "props" was given the type:975976 # type: dynamic(977 (%Protobuf.FieldProps{repeated?: true} and not %Protobuf.FieldProps{packed?: boolean()}) or978 (map() and979 not (%Protobuf.FieldProps{repeated?: true} or %Protobuf.FieldProps{packed?: boolean()})) or980 atom() or bitstring() or empty_list() or float() or fun() or integer() or981 non_empty_list(term(), term()) or pid() or port() or reference() or {...}982 )983 # from: lib/protobuf/dsl.ex:426:19984 props985986 when defining the variable "props", you must also pattern match on "%Protobuf.FieldProps{}"987988 type warning found at:989 │990 426 │ defp cal_packed(props, _syntax), do: %FieldProps{props | packed?: false}991 │ ~992 │993 └─ lib/protobuf/dsl.ex:426:40: Protobuf.DSL.cal_packed/2994995Generated protobuf app996==> fishjam_protos997Compiling 7 files (.ex)998Generated fishjam_protos app999==> zarex1000Compiling 1 file (.ex)1001Generated zarex app1002==> numbers1003Compiling 7 files (.ex)1004Generated numbers app1005==> elixir_make1006Compiling 8 files (.ex)1007Generated elixir_make app1008==> nerves_logging1009 CC kmsg_tailer.o1010 LD kmsg_tailer1011Compiling 5 files (.ex)1012Generated nerves_logging app1013==> ratio1014Compiling 5 files (.ex)1015 warning: <|> is deprecated. Use another pipe-like operator1016 │1017 123 │ def numerator <|> denominator1018 │ ~1019 │1020 └─ lib/ratio.ex:123:1710211022 warning: <|> is deprecated. Use another pipe-like operator1023 │1024 125 │ def _numerator <|> 0 do1025 │ ~1026 │1027 └─ lib/ratio.ex:125:1810281029 warning: <|> is deprecated. Use another pipe-like operator1030 │1031 129 │ def numerator <|> denominator when is_integer(numerator) and is_integer(denominator) do1032 │ ~1033 │1034 └─ lib/ratio.ex:129:1710351036 warning: <|> is deprecated. Use another pipe-like operator1037 │1038 133 │ def numerator <|> denominator when is_float(numerator) do1039 │ ~1040 │1041 └─ lib/ratio.ex:133:1710421043 warning: <|> is deprecated. Use another pipe-like operator1044 │1045 137 │ def numerator <|> denominator when is_float(denominator) do1046 │ ~1047 │1048 └─ lib/ratio.ex:137:1710491050 warning: <|> is deprecated. Use another pipe-like operator1051 │1052 141 │ def (numerator = %Ratio{}) <|> (denominator = %Ratio{}) do1053 │ ~1054 │1055 └─ lib/ratio.ex:141:3010561057 warning: <|> is deprecated. Use another pipe-like operator1058 │1059 146 │ def (numerator = %Decimal{}) <|> (denominator = %Decimal{}) do1060 │ ~1061 │1062 └─ lib/ratio.ex:146:3410631064 warning: <|> is deprecated. Use another pipe-like operator1065 │1066 151 │ def (numerator = %Decimal{}) <|> denominator when is_float(denominator) do1067 │ ~1068 │1069 └─ lib/ratio.ex:151:3410701071 warning: <|> is deprecated. Use another pipe-like operator1072 │1073 156 │ def numerator <|> (denominator = %Decimal{}) when is_float(numerator) do1074 │ ~1075 │1076 └─ lib/ratio.ex:156:1910771078 warning: <|> is deprecated. Use another pipe-like operator1079 │1080 161 │ def (numerator = %Decimal{}) <|> denominator when is_integer(denominator) do1081 │ ~1082 │1083 └─ lib/ratio.ex:161:3410841085 warning: <|> is deprecated. Use another pipe-like operator1086 │1087 166 │ def numerator <|> (denominator = %Decimal{}) when is_integer(numerator) do1088 │ ~1089 │1090 └─ lib/ratio.ex:166:1910911092 warning: <|> is deprecated. Use another pipe-like operator1093 │1094 171 │ def numerator <|> (denominator = %Ratio{}) when is_integer(numerator) do1095 │ ~1096 │1097 └─ lib/ratio.ex:171:1710981099 warning: <|> is deprecated. Use another pipe-like operator1100 │1101 175 │ def (numerator = %Ratio{}) <|> denominator when is_integer(denominator) do1102 │ ~1103 │1104 └─ lib/ratio.ex:175:3011051106 warning: <|> is deprecated. Use another pipe-like operator1107 │1108 205 │ <|> Ratio.DecimalConversion.decimal_to_rational(denominator)1109 │ ~1110 │1111 └─ lib/ratio.ex:205:711121113 warning: <|> is deprecated. Use another pipe-like operator1114 │1115 209 │ numerator <|> Ratio.DecimalConversion.decimal_to_rational(denominator)1116 │ ~1117 │1118 └─ lib/ratio.ex:209:1711191120 warning: <|> is deprecated. Use another pipe-like operator1121 │1122 214 │ numerator <|> denominator1123 │ ~1124 │1125 └─ lib/ratio.ex:214:1511261127 warning: <|> is deprecated. Use another pipe-like operator1128 │1129 228 │ do: Kernel.abs(numerator) <|> denominator1130 │ ~1131 │1132 └─ lib/ratio.ex:228:3111331134 warning: <|> is deprecated. Use another pipe-like operator1135 │1136 271 │ Kernel.+(a, c) <|> lcm1137 │ ~1138 │1139 └─ lib/ratio.ex:271:2011401141 warning: <|> is deprecated. Use another pipe-like operator1142 │1143 275 │ Kernel.+(a * d, c * b) <|> (b * d)1144 │ ~1145 │1146 └─ lib/ratio.ex:275:2811471148 warning: <|> is deprecated. Use another pipe-like operator1149 │1150 309 │ Kernel.*(numerator1, numerator2) <|> Kernel.*(denominator1, denominator2)1151 │ ~1152 │1153 └─ lib/ratio.ex:309:3811541155 warning: <|> is deprecated. Use another pipe-like operator1156 │1157 327 │ Kernel.*(numerator1, denominator2) <|> Kernel.*(denominator1, numerator2)1158 │ ~1159 │1160 └─ lib/ratio.ex:327:4011611162 warning: <|> is deprecated. Use another pipe-like operator1163 │1164 434 │ defp do_pow(x, n, y) when Kernel.<(n, 0), do: do_pow(1 <|> x, Kernel.-(n), y)1165 │ ~1166 │1167 └─ lib/ratio.ex:434:5811681169 warning: <|> is deprecated. Use another pipe-like operator1170 │1171 21 │ numerator <|> denominator1172 │ ~1173 │1174 └─ lib/ratio/float_conversion.ex:21:1511751176 warning: Ratio.DecimalConversion.decimal_to_rational/1 is undefined (module Ratio.DecimalConversion is not available or is yet to be defined)1177 │1178 17 │ {ratio, Ratio.DecimalConversion.decimal_to_rational(decimal)}1179 │ ~1180 │1181 └─ lib/ratio/coerce.ex:17:37: Coerce.Implementations.Ratio.Decimal.coerce/211821183both :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 dependencies1184Generated ratio app1185==> elixir_uuid1186Compiling 1 file (.ex)1187 warning: use Bitwise is deprecated. import Bitwise instead1188 │1189 2 │ use Bitwise, only_operators: true1190 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1191 │1192 └─ lib/uuid.ex:2: UUID (module)11931194Generated elixir_uuid app1195==> nerves_discovery1196Compiling 5 files (.ex)1197Generated nerves_discovery app1198==> ring_logger1199Compiling 7 files (.ex)1200Generated ring_logger app1201==> statistics1202Compiling 13 files (.ex)1203Generated statistics app1204==> interactive_cmd1205Compiling 1 file (.ex)1206Generated interactive_cmd app1207==> nerves1208Compiling 65 files (.ex)1209 warning: redefining module Mix.Tasks.Nerves.Init (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Mix.Tasks.Nerves.Init.beam)1210 │1211 6 │ defmodule Mix.Tasks.Nerves.Init do1212 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1213 │1214 └─ lib/mix/tasks/nerves.init.ex:6: Mix.Tasks.Nerves.Init (module)12151216 warning: redefining module Nerves (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.beam)1217 │1218 6 │ defmodule Nerves do1219 │ ~~~~~~~~~~~~~~~~~~~1220 │1221 └─ lib/nerves.ex:6: Nerves (module)12221223 warning: redefining module Nerves.ArtifactResolver (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.ArtifactResolver.beam)1224 │1225 5 │ defmodule Nerves.ArtifactResolver do1226 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1227 │1228 └─ lib/nerves/artifact_resolver.ex:5: Nerves.ArtifactResolver (module)12291230 warning: redefining module Nerves.BuildAction.AppModes (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.AppModes.beam)1231 │1232 6 │ defmodule Nerves.BuildAction.AppModes do1233 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1234 │1235 └─ lib/nerves/build_action/app_modes.ex:6: Nerves.BuildAction.AppModes (module)12361237 warning: redefining module Nerves.BuildAction.CheckExecutables (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.CheckExecutables.beam)1238 │1239 5 │ defmodule Nerves.BuildAction.CheckExecutables do1240 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1241 │1242 └─ lib/nerves/build_action/check_executables.ex:5: Nerves.BuildAction.CheckExecutables (module)12431244 warning: redefining module Nerves.BuildAction.Erlinit (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.Erlinit.beam)1245 │1246 8 │ defmodule Nerves.BuildAction.Erlinit do1247 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1248 │1249 └─ lib/nerves/build_action/erlinit.ex:8: Nerves.BuildAction.Erlinit (module)12501251 warning: redefining module Nerves.BuildAction.Firmware (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.Firmware.beam)1252 │1253 5 │ defmodule Nerves.BuildAction.Firmware do1254 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1255 │1256 └─ lib/nerves/build_action/firmware.ex:5: Nerves.BuildAction.Firmware (module)12571258 warning: redefining module Nerves.BuildAction.IExStartupCheck (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.IExStartupCheck.beam)1259 │1260 7 │ defmodule Nerves.BuildAction.IExStartupCheck do1261 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1262 │1263 └─ lib/nerves/build_action/iex_startup_check.ex:7: Nerves.BuildAction.IExStartupCheck (module)12641265 warning: redefining module Nerves.BuildAction.NervesV1System (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1System.beam)1266 │1267 5 │ defmodule Nerves.BuildAction.NervesV1System do1268 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1269 │1270 └─ lib/nerves/build_action/nerves_v1_system.ex:5: Nerves.BuildAction.NervesV1System (module)12711272 warning: redefining module Nerves.BuildAction.NervesV1Toolchain (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.NervesV1Toolchain.beam)1273 │1274 5 │ defmodule Nerves.BuildAction.NervesV1Toolchain do1275 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1276 │1277 └─ lib/nerves/build_action/nerves_v1_toolchain.ex:5: Nerves.BuildAction.NervesV1Toolchain (module)12781279 warning: redefining module Nerves.BuildAction.Rootfs (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.Rootfs.beam)1280 │1281 5 │ defmodule Nerves.BuildAction.Rootfs do1282 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1283 │1284 └─ lib/nerves/build_action/rootfs.ex:5: Nerves.BuildAction.Rootfs (module)12851286 warning: redefining module Nerves.BuildAction.SortApps (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.SortApps.beam)1287 │1288 6 │ defmodule Nerves.BuildAction.SortApps do1289 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1290 │1291 └─ lib/nerves/build_action/sort_apps.ex:6: Nerves.BuildAction.SortApps (module)12921293 warning: redefining module Nerves.BuildAction.StripAll (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.StripAll.beam)1294 │1295 5 │ defmodule Nerves.BuildAction.StripAll do1296 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1297 │1298 └─ lib/nerves/build_action/strip_all.ex:5: Nerves.BuildAction.StripAll (module)12991300 warning: redefining module Nerves.BuildAction.Trimmer (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildAction.Trimmer.beam)1301 │1302 5 │ defmodule Nerves.BuildAction.Trimmer do1303 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1304 │1305 └─ lib/nerves/build_action/trimmer.ex:5: Nerves.BuildAction.Trimmer (module)13061307 warning: redefining module Nerves.BuildPlan (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildPlan.beam)1308 │1309 5 │ defmodule Nerves.BuildPlan do1310 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1311 │1312 └─ lib/nerves/build_plan.ex:5: Nerves.BuildPlan (module)13131314 warning: redefining module Nerves.BuildPlan.Checks (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.BuildPlan.Checks.beam)1315 │1316 5 │ defmodule Nerves.BuildPlan.Checks do1317 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1318 │1319 └─ lib/nerves/build_plan/checks.ex:5: Nerves.BuildPlan.Checks (module)13201321 warning: redefining module Nerves.Container (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.Container.beam)1322 │1323 6 │ defmodule Nerves.Container do1324 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1325 │1326 └─ lib/nerves/container.ex:6: Nerves.Container (module)13271328 warning: redefining module Nerves.Fingerprint (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.Fingerprint.beam)1329 │1330 5 │ defmodule Nerves.Fingerprint do1331 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1332 │1333 └─ lib/nerves/fingerprint.ex:5: Nerves.Fingerprint (module)13341335 warning: redefining module Nerves.MixPackage (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.MixPackage.beam)1336 │1337 5 │ defmodule Nerves.MixPackage do1338 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1339 │1340 └─ lib/nerves/mix_package.ex:5: Nerves.MixPackage (module)13411342 warning: redefining module Nerves.Paths (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.Paths.beam)1343 │1344 5 │ defmodule Nerves.Paths do1345 │ ~~~~~~~~~~~~~~~~~~~~~~~~~1346 │1347 └─ lib/nerves/paths.ex:5: Nerves.Paths (module)13481349 warning: redefining module Nerves.TargetTuple (current version loaded from /work/proj/_build/rpi4/lib/nerves/ebin/Elixir.Nerves.TargetTuple.beam)1350 │1351 5 │ defmodule Nerves.TargetTuple do1352 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1353 │1354 └─ lib/nerves/target_tuple.ex:5: Nerves.TargetTuple (module)13551356Generated nerves app1357==> nerves_toolchain_aarch64_nerves_linux_gnu1358Compiling 1 file (.ex)1359Generated nerves_toolchain_aarch64_nerves_linux_gnu app1360==> nerves_system_rpi41361Generated nerves_system_rpi4 app1362==> membrane_raw_video_format1363Compiling 2 files (.ex)1364Generated membrane_raw_video_format app1365==> membrane_cmaf_format1366Compiling 1 file (.ex)1367Generated membrane_cmaf_format app1368==> nerves_compatibility_test1369===> Analyzing applications...1370===> Compiling telemetry1371==> telemetry_metrics1372Compiling 7 files (.ex)1373Generated telemetry_metrics app1374==> membrane_telemetry_metrics1375Compiling 7 files (.ex)1376 warning: the following clause cannot match because the previous clauses already matched all possible values:13771378 _ ->13791380 it attempts to match on the result of:13811382 emit_event?(event_name)13831384 which has the already matched type:13851386 dynamic(false)13871388 type warning found at:1389 │1390 14 │ if emit_event?(event_name) do1391 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1392 │1393 └─ lib/telemetry_metrics.ex:14: Membrane.TelemetryMetrics.conditional_execute/513941395 warning: the following clause cannot match because the previous clauses already matched all possible values:13961397 _ ->13981399 it attempts to match on the result of:14001401 emit_event?(event_name)14021403 which has the already matched type:14041405 dynamic(false)14061407 type warning found at:1408 │1409 43 │ if emit_event?(event_name) do1410 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1411 │1412 └─ lib/telemetry_metrics.ex:43: Membrane.TelemetryMetrics.execute/414131414 warning: the following clause cannot match because the previous clauses already matched all possible values:14151416 _ ->14171418 it attempts to match on the result of:14191420 emit_event?(event_name)14211422 which has the already matched type:14231424 dynamic(false)14251426 type warning found at:1427 │1428 70 │ if emit_event?(event_name) do1429 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1430 │1431 └─ lib/telemetry_metrics.ex:70: Membrane.TelemetryMetrics.register/214321433Generated membrane_telemetry_metrics app1434==> membrane_h264_format1435Compiling 1 file (.ex)1436Generated membrane_h264_format app1437==> bimap1438Compiling 2 files (.ex)1439Generated bimap app1440==> membrane_aac_format1441Compiling 1 file (.ex)1442Generated membrane_aac_format app1443==> heap1444Compiling 4 files (.ex)1445Generated heap app1446==> membrane_opus_format1447Compiling 1 file (.ex)1448Generated membrane_opus_format app1449==> ex_sdp1450Compiling 26 files (.ex)1451Generated ex_sdp app1452==> ex_rtp1453Compiling 5 files (.ex)1454Generated ex_rtp app1455==> uboot_env1456Compiling 5 files (.ex)1457Generated uboot_env app1458==> qex1459Compiling 4 files (.ex)1460warning: x..y inside match is deprecated, you must always match on the step: x..y//var or x..y//_ if you want to ignore it1461 lib/qex.ex:45: Qex.new/114621463Generated qex app1464==> membrane_core1465Compiling 139 files (.ex)1466 warning: unused require Membrane.Core.Message (convert it to an alias instead)1467 │1468 7 │ require Membrane.Core.Message, as: Message1469 │ ~1470 │1471 └─ lib/membrane/core/parent/diamond_detection_controller.ex:7:314721473 warning: unused require Membrane.Core.Component1474 │1475 5 │ require Membrane.Core.Component1476 │ ~1477 │1478 └─ lib/membrane/core/child/lifecycle_controller.ex:5:314791480 warning: unused require Membrane.Core.Component1481 │1482 7 │ require Membrane.Core.Component1483 │ ~1484 │1485 └─ lib/membrane/core/timer_controller.ex:7:314861487 warning: unused require Membrane.Core.Helper.FastMap1488 │1489 138 │ require FastMap1490 │ ~1491 │1492 └─ lib/membrane/core/child/pad_model.ex:138:514931494 warning: unused require Membrane.Core.Child.PadModel1495 │1496 7 │ require Membrane.Core.Child.PadModel1497 │ ~1498 │1499 └─ lib/membrane/core/child/pad_controller.ex:7:315001501 warning: unused require Membrane.Core.Message (convert it to an alias instead)1502 │1503 19 │ require Membrane.Core.Message, as: Message1504 │ ~1505 │1506 └─ lib/membrane/core/element/manual_flow_controller.ex:19:315071508 warning: unused require Membrane.Logger1509 │1510 20 │ require Membrane.Logger1511 │ ~1512 │1513 └─ lib/membrane/core/element/manual_flow_controller.ex:20:315141515 warning: unused require Membrane.Core.Component1516 │1517 23 │ require Membrane.Core.Component1518 │ ~1519 │1520 └─ lib/membrane/core/parent/child_life_controller.ex:23:315211522 warning: unused require Membrane.Core.Message (convert it to an alias instead)1523 │1524 24 │ require Membrane.Core.Message, as: Message1525 │ ~1526 │1527 └─ lib/membrane/core/parent/child_life_controller.ex:24:315281529 warning: unused require Membrane.Core.Component1530 │1531 9 │ require Membrane.Core.Component1532 │ ~1533 │1534 └─ lib/membrane/core/parent/child_life_controller/startup_utils.ex:9:315351536 warning: unused require Membrane.Core.Component1537 │1538 18 │ require Membrane.Core.Component1539 │ ~1540 │1541 └─ lib/membrane/core/parent/lifecycle_controller.ex:18:315421543 warning: unused require Membrane.Core.Message1544 │1545 19 │ require Membrane.Core.Message1546 │ ~1547 │1548 └─ lib/membrane/core/parent/lifecycle_controller.ex:19:315491550 warning: unused require Membrane.Core.Message1551 │1552 7 │ require Membrane.Core.Message1553 │ ~1554 │1555 └─ lib/membrane/core/lifecycle_controller.ex:7:315561557 warning: unused require Membrane.Core.Message1558 │1559 20 │ require Membrane.Core.Message1560 │ ~1561 │1562 └─ lib/membrane/core/element/lifecycle_controller.ex:20:315631564 warning: the variable "at_pos" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1565 │1566 103 │ <<part1::binary-size(at_pos), part2::binary>> = payload1567 │ ~1568 │1569 └─ lib/membrane/payload.ex:103:26: Membrane.Payload.BitString.split_at/215701571 warning: the variable "bytes" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1572 │1573 116 │ <<_dropped::binary-size(bytes), rest::binary>> = payload1574 │ ~1575 │1576 └─ lib/membrane/payload.ex:116:29: Membrane.Payload.BitString.drop/215771578 warning: unused require Membrane.Core.Message (convert it to an alias instead)1579 │1580 11 │ require Membrane.Core.Message, as: Message1581 │ ~1582 │1583 └─ lib/membrane/core/element/atomic_demand.ex:11:315841585 warning: unused require Membrane.Pad (convert it to an alias instead)1586 │1587 13 │ require Membrane.Pad, as: Pad1588 │ ~1589 │1590 └─ lib/membrane/core/element/atomic_demand.ex:13:315911592 warning: unused require Membrane.Core.Message1593 │1594 20 │ require Membrane.Core.Message1595 │ ~1596 │1597 └─ lib/membrane/bin.ex:20:315981599 warning: unused require Membrane.Core.Message (convert it to an alias instead)1600 │1601 24 │ require Membrane.Core.Message, as: Message1602 │ ~1603 │1604 └─ lib/membrane/core/element/effective_flow_controller.ex:24:316051606 warning: unused require Membrane.Pad (convert it to an alias instead)1607 │1608 26 │ require Membrane.Pad, as: Pad1609 │ ~1610 │1611 └─ lib/membrane/core/element/effective_flow_controller.ex:26:316121613 warning: unused require Membrane.Core.Message (convert it to an alias instead)1614 │1615 26 │ require Membrane.Core.Message, as: Message1616 │ ~1617 │1618 └─ lib/membrane/core/element/pad_controller.ex:26:316191620 warning: unused require Membrane.Pad (convert it to an alias instead)1621 │1622 29 │ require Membrane.Pad, as: Pad1623 │ ~1624 │1625 └─ lib/membrane/core/element/pad_controller.ex:29:316261627 warning: unused require Membrane.Pad (convert it to an alias instead)1628 │1629 18 │ require Membrane.Pad, as: Pad1630 │ ~1631 │1632 └─ lib/membrane/core/element/auto_flow_controller.ex:18:316331634 warning: unused require Membrane.Pad1635 │1636 15 │ require Membrane.Pad1637 │ ~1638 │1639 └─ lib/membrane/core/legacy_telemetry.ex:15:316401641 warning: unused require Membrane.Pad (convert it to an alias instead)1642 │1643 6 │ require Membrane.Pad, as: Pad1644 │ ~1645 │1646 └─ lib/membrane/core/element/diamond_detection_controller/path_in_grapth.ex:6:516471648 warning: unused require Membrane.Core.Component1649 │1650 14 │ require Membrane.Core.Component1651 │ ~1652 │1653 └─ lib/membrane/core/pipeline.ex:14:316541655 warning: unused require Membrane.Pad1656 │1657 11 │ require Membrane.Pad1658 │ ~1659 │1660 └─ lib/membrane/core/child/pad_spec_handler.ex:11:316611662 warning: unused require Membrane.Logger1663 │1664 81 │ require Membrane.Logger1665 │ ~1666 │1667 └─ lib/membrane/core/element/diamond_detection_controller.ex:81:316681669 warning: unused require Membrane.Pad (convert it to an alias instead)1670 │1671 82 │ require Membrane.Pad, as: Pad1672 │ ~1673 │1674 └─ lib/membrane/core/element/diamond_detection_controller.ex:82:316751676 warning: unused require Membrane.Core.Message (convert it to an alias instead)1677 │1678 63 │ require Membrane.Core.Message, as: Message1679 │ ~1680 │1681 └─ lib/membrane/pipeline.ex:63:316821683 warning: unused require Membrane.Core.Telemetry (convert it to an alias instead)1684 │1685 13 │ require Membrane.Core.Telemetry, as: Telemetry1686 │ ~1687 │1688 └─ lib/membrane/core/callback_handler.ex:13:316891690 warning: unused require Membrane.Logger1691 │1692 11 │ require Membrane.Logger1693 │ ~1694 │1695 └─ lib/membrane/core/pipeline/action_handler.ex:11:316961697 warning: unused require Membrane.Core.Telemetry (convert it to an alias instead)1698 │1699 42 │ require Membrane.Core.Telemetry, as: Telemetry1700 │ ~1701 │1702 └─ lib/membrane/core/element.ex:42:317031704 warning: unused require Membrane.Core.Message1705 │1706 11 │ require Message1707 │ ~1708 │1709 └─ lib/membrane/core/bin/action_handler.ex:11:317101711 warning: unused require Membrane.Core.Telemetry (convert it to an alias instead)1712 │1713 27 │ require Membrane.Core.Telemetry, as: Telemetry1714 │ ~1715 │1716 └─ lib/membrane/core/element/buffer_controller.ex:27:317171718 warning: unused require Membrane.Core.Message (convert it to an alias instead)1719 │1720 34 │ require Membrane.Core.Message, as: Message1721 │ ~1722 │1723 └─ lib/membrane/core/element/action_handler.ex:34:317241725 warning: unused require Membrane.Core.Telemetry (convert it to an alias instead)1726 │1727 36 │ require Membrane.Core.Telemetry, as: Telemetry1728 │ ~1729 │1730 └─ lib/membrane/core/element/action_handler.ex:36:317311732 warning: unused require Membrane.Core.Telemetry1733 │1734 23 │ require Membrane.Core.Telemetry1735 │ ~1736 │1737 └─ lib/membrane/core/element/stream_format_controller.ex:23:317381739 warning: unused require Membrane.Core.Message1740 │1741 24 │ require Membrane.Core.Message1742 │ ~1743 │1744 └─ lib/membrane/core/element/event_controller.ex:24:317451746 warning: unused require Membrane.Core.Telemetry1747 │1748 25 │ require Membrane.Core.Telemetry1749 │ ~1750 │1751 └─ lib/membrane/core/element/event_controller.ex:25:317521753 warning: unused require Membrane.Core.Message1754 │1755 24 │ require Membrane.Core.Message1756 │ ~1757 │1758 └─ lib/membrane/core/parent/child_life_controller/link_utils.ex:24:317591760 warning: unused require Membrane.Core.Telemetry1761 │1762 25 │ require Membrane.Core.Telemetry1763 │ ~1764 │1765 └─ lib/membrane/core/parent/child_life_controller/link_utils.ex:25:317661767 warning: unused require Membrane.Core.Message1768 │1769 90 │ require Membrane.Core.Message1770 │ ~1771 │1772 └─ lib/membrane/testing/pipeline.ex:90:317731774 warning: the following clause cannot match because the previous clauses already matched all possible values:17751776 _ ->17771778 it attempts to match on the result of:17791780 handler_reported?(component_type, callback)17811782 which has the already matched type:17831784 dynamic(false)17851786 type warning found at:1787 │1788 190 │ if handler_reported?(component_type, callback) do1789 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1790 │1791 └─ lib/membrane/core/telemetry.ex:190: Membrane.Core.Telemetry.track_callback_handler/517921793 warning: the right-hand side of || will never be executed:17941795 input_demand_unit || ...17961797 because the left-hand side always evaluates to:17981799 dynamic(not false and not nil)18001801 where "input_demand_unit" was given the type:18021803 # type: dynamic(not false and not nil)1804 # from: lib/membrane/core/element/pad_controller.ex:140:451805 {output_demand_unit, input_demand_unit} = resolve_demand_units(output_pad_info, pad_info)18061807 type warning found at:1808 │1809 155 │ receiver_demand_unit: input_demand_unit || :buffers,1810 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1811 │1812 └─ lib/membrane/core/element/pad_controller.ex:155: Membrane.Core.Element.PadController.do_handle_link/618131814 warning: the following clause is redundant:18151816 {[], next_state} ->18171818 previous clauses have already matched on the following types:18191820 {empty_list() or non_empty_list(term(), term()), term()}18211822 where "next_state" was given the type:18231824 # type: dynamic()1825 # from: lib/membrane/filter_aggregator.ex1826 {[], next_state}18271828 type warning found at:1829 │1830 186 │ {[], next_state} ->1831 │ ~1832 │1833 └─ lib/membrane/filter_aggregator.ex:186:24: Membrane.FilterAggregator.perform_actions/518341835Generated membrane_core app1836==> membrane_aac_plugin1837Compiling 6 files (.ex)1838 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 operator1839 │1840 89 │ <<frame::binary-size(size), rest::binary>> -> {:frame, frame, rest}1841 │ ~1842 │1843 └─ lib/membrane/aac/parser/adts.ex:89:28: Membrane.AAC.Parser.ADTS.extract_frame/418441845 warning: the variable "adts_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1846 │1847 98 │ <<_adts::binary-size(adts_size), frame::binary-size(frame_size), rest::binary>> ->1848 │ ~1849 │1850 └─ lib/membrane/aac/parser/adts.ex:98:28: Membrane.AAC.Parser.ADTS.extract_frame/418511852 warning: the variable "frame_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1853 │1854 98 │ <<_adts::binary-size(adts_size), frame::binary-size(frame_size), rest::binary>> ->1855 │ ~1856 │1857 └─ lib/membrane/aac/parser/adts.ex:98:59: Membrane.AAC.Parser.ADTS.extract_frame/418581859 warning: the variable "custom_frequency_length" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1860 │1861 32 │ <<custom_frequency::integer-size(custom_frequency_length), channel_config_id::4,1862 │ ~1863 │1864 └─ lib/membrane/aac/parser/audio_specific_config.ex:32:38: Membrane.AAC.Parser.AudioSpecificConfig.parse_audio_specific_config/118651866 warning: the variable "url_length" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1867 │1868 60 │ <<_url::binary-size(url_length), rest::binary>> = rest1869 │ ~1870 │1871 └─ lib/membrane/aac/parser/esds.ex:60:29: Membrane.AAC.Parser.Esds.parse_esds/118721873 warning: the variable "payload_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1874 │1875 92 │ <<payload::binary-size(payload_size), rest::binary>> = rest1876 │ ~1877 │1878 └─ lib/membrane/aac/parser/esds.ex:92:32: Membrane.AAC.Parser.Esds.unpack_esds_section/218791880 warning: the variable "payload_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1881 │1882 96 │ <<payload::binary-size(payload_size), rest::binary>> = rest1883 │ ~1884 │1885 └─ lib/membrane/aac/parser/esds.ex:96:32: Membrane.AAC.Parser.Esds.unpack_esds_section/218861887 warning: a struct for Membrane.AAC.Filler.State is expected on struct update:18881889 %Membrane.AAC.Filler.State{state | frame_duration: new_duration, channels: stream_format.channels}18901891 but got type:18921893 dynamic()18941895 where "state" was given the type:18961897 # type: dynamic()1898 # from: lib/membrane/aac/filler.ex:71:571899 state19001901 when defining the variable "state", you must also pattern match on "%Membrane.AAC.Filler.State{}"19021903 type warning found at:1904 │1905 75 │ state = %State{state | frame_duration: new_duration, channels: stream_format.channels}1906 │ ~1907 │1908 └─ lib/membrane/aac/filler.ex:75:13: Membrane.AAC.Filler.handle_stream_format/419091910 warning: a struct for Membrane.Buffer is expected on struct update:19111912 %Membrane.Buffer{1913 buffer1914 | payload:1915 Membrane.AAC.Parser.ADTS.payload_to_adts(buffer.payload, ctx.pads.output.stream_format)1916 }19171918 but got type:19191920 dynamic(%{..., pts: integer()})19211922 where "buffer" was given the type:19231924 # type: dynamic(%{..., pts: integer()})1925 # from: lib/membrane/aac/parser.ex:111:121926 buffer = %{buffer | pts: round(Ratio.to_float(timestamp))}19271928 when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"19291930 type warning found at:1931 │1932 116 │ %Buffer{1933 │ ~1934 │1935 └─ lib/membrane/aac/parser.ex:116:11: Membrane.AAC.Parser.handle_buffer/419361937 warning: a struct for Membrane.Buffer is expected on struct update:19381939 %Membrane.Buffer{1940 buffer1941 | payload: silent_frame_payload,1942 pts: round(timestamp),1943 dts: round(timestamp)1944 }19451946 but got type:19471948 dynamic(%{..., pts: term()})19491950 where "buffer" was given the type:19511952 # type: dynamic(%{..., pts: term()})1953 # from: lib/membrane/aac/filler.ex:84:321954 buffer.pts19551956 when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"19571958 type warning found at:1959 │1960 96 │ %Buffer{1961 │ ~1962 │1963 └─ lib/membrane/aac/filler.ex:96:9: Membrane.AAC.Filler.handle_buffer/419641965Generated membrane_aac_plugin app1966==> membrane_h26x_plugin1967Compiling 31 files (.ex)1968Generated membrane_h26x_plugin app1969==> membrane_raw_audio_format1970Compiling 2 files (.ex)1971Generated membrane_raw_audio_format app1972==> membrane_rtp_format1973Compiling 5 files (.ex)1974Generated membrane_rtp_format app1975==> membrane_rtp_h264_plugin1976Compiling 8 files (.ex)1977 warning: the variable "preferred_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1978 │1979 37 │ <<header::1-binary, head::binary-size(preferred_size - 1), rest::binary>> ->1980 │ ~1981 │1982 └─ lib/rtp_h264/nal_formats/fu.ex:37:45: Membrane.RTP.H264.FU.serialize/219831984 warning: the variable "preferred_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1985 │1986 54 │ <<head::binary-size(preferred_size - 2), rest::binary>> when byte_size(rest) > 0 ->1987 │ ~1988 │1989 └─ lib/rtp_h264/nal_formats/fu.ex:54:27: Membrane.RTP.H264.FU.do_serialize/519901991 warning: the variable "offset" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1992 │1993 120 │ <<_x::binary-size(offset), nalu::binary-size(nalu_size), remaining_aus::binary>> = rest1994 │ ~1995 │1996 └─ lib/rtp_h264/utils.ex:120:25: Membrane.RTP.H264.Utils.check_first_aggregation_unit/319971998 warning: the variable "nalu_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator1999 │2000 120 │ <<_x::binary-size(offset), nalu::binary-size(nalu_size), remaining_aus::binary>> = rest2001 │ ~2002 │2003 └─ lib/rtp_h264/utils.ex:120:52: Membrane.RTP.H264.Utils.check_first_aggregation_unit/320042005 warning: a struct for Membrane.RTP.H264.Depayloader.State is expected on struct update:20062007 %Membrane.RTP.H264.Depayloader.State{state | parser_acc: nil}20082009 but got type:20102011 dynamic()20122013 where "state" was given the type:20142015 # type: dynamic()2016 # from: lib/rtp_h264/depayloader.ex:43:432017 state20182019 when defining the variable "state", you must also pattern match on "%Membrane.RTP.H264.Depayloader.State{}"20202021 type warning found at:2022 │2023 51 │ {[], %State{state | parser_acc: nil}}2024 │ ~2025 │2026 └─ lib/rtp_h264/depayloader.ex:51:14: Membrane.RTP.H264.Depayloader.handle_buffer/420272028 warning: a struct for Membrane.Buffer is expected on struct update:20292030 %Membrane.Buffer{buffer | payload: &1}20312032 but got type:20332034 dynamic(%{..., payload: term()})20352036 where "buffer" was given the type:20372038 # type: dynamic(%{..., payload: term()})2039 # from: lib/rtp_h264/payloader.ex:187:112040 Membrane.RTP.H264.FU.serialize(2041 buffer.payload,2042 state.max_payload_size2043 )20442045 when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"20462047 type warning found at:2048 │2049 188 │ |> Enum.map(&%Buffer{buffer | payload: &1})2050 │ ~2051 │2052 └─ lib/rtp_h264/payloader.ex:188:18: Membrane.RTP.H264.Payloader.use_fu_a/220532054 warning: a struct for Membrane.RTP.H264.Depayloader.State is expected on struct update:20552056 %Membrane.RTP.H264.Depayloader.State{state | parser_acc: nil}20572058 but got type:20592060 dynamic()20612062 where "state" was given the type:20632064 # type: dynamic()2065 # from: lib/rtp_h264/depayloader.ex:67:562066 state20672068 when defining the variable "state", you must also pattern match on "%Membrane.RTP.H264.Depayloader.State{}"20692070 type warning found at:2071 │2072 71 │ result = buffer_output(data, buffer, %State{state | parser_acc: nil})2073 │ ~2074 │2075 └─ lib/rtp_h264/depayloader.ex:71:46: Membrane.RTP.H264.Depayloader.handle_unit_type/420762077 warning: a struct for Membrane.RTP.H264.FU is expected on struct update:20782079 %Membrane.RTP.H264.FU{acc | data: [packet]}20802081 but got type:20822083 dynamic()20842085 where "acc" was given the type:20862087 # type: dynamic()2088 # from: lib/rtp_h264/nal_formats/fu.ex:73:542089 acc20902091 when defining the variable "acc", you must also pattern match on "%Membrane.RTP.H264.FU{}"20922093 type warning found at:2094 │2095 74 │ do: {:incomplete, %__MODULE__{acc | data: [packet]}}2096 │ ~2097 │2098 └─ lib/rtp_h264/nal_formats/fu.ex:74:23: Membrane.RTP.H264.FU.do_parse/320992100 warning: a struct for Membrane.RTP.H264.Depayloader.State is expected on struct update:21012102 %Membrane.RTP.H264.Depayloader.State{state | parser_acc: fu}21032104 but got type:21052106 dynamic()21072108 where "state" was given the type:21092110 # type: dynamic()2111 # from: lib/rtp_h264/depayloader.ex:67:562112 state21132114 when defining the variable "state", you must also pattern match on "%Membrane.RTP.H264.Depayloader.State{}"21152116 type warning found at:2117 │2118 75 │ result = {[], %State{state | parser_acc: fu}}2119 │ ~2120 │2121 └─ lib/rtp_h264/depayloader.ex:75:23: Membrane.RTP.H264.Depayloader.handle_unit_type/421222123 warning: a struct for Membrane.Buffer is expected on struct update:21242125 %Membrane.Buffer{buffer | payload: add_prefix(&1)}21262127 but got type:21282129 dynamic()21302131 where "buffer" was given the type:21322133 # type: dynamic()2134 # from: lib/rtp_h264/depayloader.ex:83:512135 buffer21362137 when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"21382139 type warning found at:2140 │2141 85 │ buffers = Enum.map(result, &%Buffer{buffer | payload: add_prefix(&1)})2142 │ ~2143 │2144 └─ lib/rtp_h264/depayloader.ex:85:35: Membrane.RTP.H264.Depayloader.handle_unit_type/421452146 warning: a struct for Membrane.Buffer is expected on struct update:21472148 %Membrane.Buffer{buffer | payload: add_prefix(data)}21492150 but got type:21512152 dynamic()21532154 where "buffer" was given the type:21552156 # type: dynamic()2157 # from: lib/rtp_h264/depayloader.ex:95:312158 buffer21592160 when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"21612162 type warning found at:2163 │2164 96 │ [buffer: {:output, %Buffer{buffer | payload: add_prefix(data)}}]2165 │ ~2166 │2167 └─ lib/rtp_h264/depayloader.ex:96:24: Membrane.RTP.H264.Depayloader.action_from_data/221682169Generated membrane_rtp_h264_plugin app2170==> membrane_rtp_vp8_plugin2171Compiling 6 files (.ex)2172 warning: a struct for Membrane.RTP.VP8.PayloadDescriptor is expected on struct update:21732174 %Membrane.RTP.VP8.PayloadDescriptor{descriptor_acc | i: i, l: l, t: t, k: k}21752176 but got type:21772178 dynamic()21792180 where "descriptor_acc" was given the type:21812182 # type: dynamic()2183 # from: lib/membrane_rtp_vp8/payload_descriptor.ex:130:102184 descriptor_acc21852186 when defining the variable "descriptor_acc", you must also pattern match on "%Membrane.RTP.VP8.PayloadDescriptor{}"21872188 type warning found at:2189 │2190 136 │ {:ok, {%__MODULE__{descriptor_acc | i: i, l: l, t: t, k: k}, rest}}2191 │ ~2192 │2193 └─ lib/membrane_rtp_vp8/payload_descriptor.ex:136:12: Membrane.RTP.VP8.PayloadDescriptor.get_extended_control_bits/221942195 warning: a struct for Membrane.RTP.VP8.PayloadDescriptor is expected on struct update:21962197 %Membrane.RTP.VP8.PayloadDescriptor{descriptor_acc | m: 0, picture_id: picture_id}21982199 but got type:22002201 dynamic()22022203 where "descriptor_acc" was given the type:22042205 # type: dynamic()2206 # from: lib/membrane_rtp_vp8/payload_descriptor.ex:143:232207 descriptor_acc22082209 when defining the variable "descriptor_acc", you must also pattern match on "%Membrane.RTP.VP8.PayloadDescriptor{}"22102211 type warning found at:2212 │2213 145 │ do: {:ok, {%__MODULE__{descriptor_acc | m: 0, picture_id: picture_id}, rest}}2214 │ ~2215 │2216 └─ lib/membrane_rtp_vp8/payload_descriptor.ex:145:19: Membrane.RTP.VP8.PayloadDescriptor.get_picture_id/222172218 warning: a struct for Membrane.RTP.VP8.PayloadDescriptor is expected on struct update:22192220 %Membrane.RTP.VP8.PayloadDescriptor{descriptor_acc | m: 1, picture_id: picture_id}22212222 but got type:22232224 dynamic()22252226 where "descriptor_acc" was given the type:22272228 # type: dynamic()2229 # from: lib/membrane_rtp_vp8/payload_descriptor.ex:147:232230 descriptor_acc22312232 when defining the variable "descriptor_acc", you must also pattern match on "%Membrane.RTP.VP8.PayloadDescriptor{}"22332234 type warning found at:2235 │2236 149 │ do: {:ok, {%__MODULE__{descriptor_acc | m: 1, picture_id: picture_id}, rest}}2237 │ ~2238 │2239 └─ lib/membrane_rtp_vp8/payload_descriptor.ex:149:19: Membrane.RTP.VP8.PayloadDescriptor.get_picture_id/222402241 warning: a struct for Membrane.RTP.VP8.PayloadDescriptor is expected on struct update:22422243 %Membrane.RTP.VP8.PayloadDescriptor{descriptor_acc | tl0picidx: tl0picidx}22442245 but got type:22462247 dynamic()22482249 where "descriptor_acc" was given the type:22502251 # type: dynamic()2252 # from: lib/membrane_rtp_vp8/payload_descriptor.ex:156:382253 descriptor_acc22542255 when defining the variable "descriptor_acc", you must also pattern match on "%Membrane.RTP.VP8.PayloadDescriptor{}"22562257 type warning found at:2258 │2259 158 │ do: {:ok, {%__MODULE__{descriptor_acc | tl0picidx: tl0picidx}, rest}}2260 │ ~2261 │2262 └─ lib/membrane_rtp_vp8/payload_descriptor.ex:158:19: Membrane.RTP.VP8.PayloadDescriptor.get_temporal_level_zero_index/222632264 warning: a struct for Membrane.RTP.VP8.Depayloader.State is expected on struct update:22652266 %Membrane.RTP.VP8.Depayloader.State{2267 state2268 | frame_acc: %Membrane.RTP.VP8.Frame{fragments: [], last_seq_num: nil, last_timestamp: nil}2269 }22702271 but got type:22722273 dynamic()22742275 where "state" was given the type:22762277 # type: dynamic()2278 # from: lib/membrane_rtp_vp8/depayloader.ex:40:602279 state22802281 when defining the variable "state", you must also pattern match on "%Membrane.RTP.VP8.Depayloader.State{}"22822283 type warning found at:2284 │2285 41 │ do: {[forward: event], %State{state | frame_acc: %Frame{}}}2286 │ ~2287 │2288 └─ lib/membrane_rtp_vp8/depayloader.ex:41:28: Membrane.RTP.VP8.Depayloader.handle_event/422892290 warning: a struct for Membrane.Buffer is expected on struct update:22912292 %Membrane.Buffer{state.first_buffer | payload: frame}22932294 but got type:22952296 dynamic()22972298 where "state" was given the types:22992300 # type: dynamic(not %Membrane.RTP.VP8.Depayloader.State{first_buffer: nil})2301 # from: lib/membrane_rtp_vp8/depayloader.ex:52:422302 state23032304 # type: dynamic(2305 %{..., frame_acc: %{..., fragments: term()}} and2306 not %Membrane.RTP.VP8.Depayloader.State{first_buffer: nil}2307 )2308 # from: lib/membrane_rtp_vp8/depayloader.ex:53:272309 Membrane.RTP.VP8.Frame.flush(state.frame_acc)23102311 # type: dynamic(2312 %{..., first_buffer: term(), frame_acc: %{..., fragments: term()}} and2313 not %Membrane.RTP.VP8.Depayloader.State{first_buffer: nil}2314 )2315 # from: lib/membrane_rtp_vp8/depayloader.ex:56:262316 %Membrane.Buffer{...}23172318 you must assign "state.first_buffer" to variable and pattern match on "%Membrane.Buffer{}"23192320 type warning found at:2321 │2322 56 │ buffer: {:output, %Buffer{state.first_buffer | payload: frame}},2323 │ ~2324 │2325 └─ lib/membrane_rtp_vp8/depayloader.ex:56:26: Membrane.RTP.VP8.Depayloader.handle_end_of_stream/323262327 warning: a struct for Membrane.RTP.VP8.Depayloader.State is expected on struct update:23282329 %Membrane.RTP.VP8.Depayloader.State{state | frame_acc: acc}23302331 but got type:23322333 dynamic(%{..., frame_acc: term()})23342335 where "state" was given the type:23362337 # type: dynamic(%{..., frame_acc: term()})2338 # from: lib/membrane_rtp_vp8/depayloader.ex:76:162339 Membrane.RTP.VP8.Frame.parse(buffer, state.frame_acc)23402341 when defining the variable "state", you must also pattern match on "%Membrane.RTP.VP8.Depayloader.State{}"23422343 type warning found at:2344 │2345 78 │ {:ok, [], %State{state | frame_acc: acc}}2346 │ ~2347 │2348 └─ lib/membrane_rtp_vp8/depayloader.ex:78:19: Membrane.RTP.VP8.Depayloader.parse_buffer/223492350 warning: a struct for Membrane.RTP.VP8.Depayloader.State is expected on struct update:23512352 %Membrane.RTP.VP8.Depayloader.State{state | frame_acc: acc, first_buffer: buffer}23532354 but got type:23552356 dynamic(%{..., first_buffer: %{..., payload: term()}, frame_acc: term()})23572358 where "state" was given the types:23592360 # type: dynamic(%{..., frame_acc: term()})2361 # from: lib/membrane_rtp_vp8/depayloader.ex:76:162362 Membrane.RTP.VP8.Frame.parse(buffer, state.frame_acc)23632364 # type: dynamic(%{..., first_buffer: %{..., payload: term()}, frame_acc: term()})2365 # from: lib/membrane_rtp_vp8/depayloader.ex:81:92366 {:ok, [buffer: {:output, %{state.first_buffer | payload: frame}}],2367 %Membrane.RTP.VP8.Depayloader.State{...}}23682369 when defining the variable "state", you must also pattern match on "%Membrane.RTP.VP8.Depayloader.State{}"23702371 type warning found at:2372 │2373 82 │ %State{state | frame_acc: acc, first_buffer: buffer}}2374 │ ~2375 │2376 └─ lib/membrane_rtp_vp8/depayloader.ex:82:10: Membrane.RTP.VP8.Depayloader.parse_buffer/223772378Generated membrane_rtp_vp8_plugin app2379==> membrane_funnel_plugin2380Compiling 2 files (.ex)2381Generated membrane_funnel_plugin app2382==> membrane_tee_plugin2383Compiling 3 files (.ex)2384238502:59:42.806 [warning] Membrane.Tee.Master defines pads with `flow_control: :auto` and pads with `flow_control: :push` at the same time. Please, consider if this what you want to do - flow control of these pads won't be integrated. Setting `flow_control` to `:auto` in the places where it has been set to `:push` might be a good idea.2386Pads with `flow_control: :auto`: input, master.2387Pads with `flow_control: :push`: copy.23882389If you want get rid of this warning, pass `flow_control_hints?: false` option to `use Membrane.Filter`.23902391239202:59:42.861 [warning] Membrane.Tee.PushOutput defines pads with `flow_control: :auto` and pads with `flow_control: :push` at the same time. Please, consider if this what you want to do - flow control of these pads won't be integrated. Setting `flow_control` to `:auto` in the places where it has been set to `:push` might be a good idea.2393Pads with `flow_control: :auto`: input.2394Pads with `flow_control: :push`: output.23952396If you want get rid of this warning, pass `flow_control_hints?: false` option to `use Membrane.Filter`.23972398Generated membrane_tee_plugin app2399==> membrane_file_plugin2400Compiling 10 files (.ex)2401Generated membrane_file_plugin app2402==> membrane_timestamp_queue2403Compiling 1 file (.ex)2404Generated membrane_timestamp_queue app2405==> membrane_mp4_plugin2406Compiling 32 files (.ex)2407 warning: the variable "content_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator2408 │2409 23 │ header_content: <<content::binary-size(content_size), data::binary>> <- rest,2410 │ ~2411 │2412 └─ lib/membrane_mp4/container/parse_helper.ex:23:50: Membrane.MP4.Container.ParseHelper.parse_boxes/424132414 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 operator2415 │2416 76 │ <<^reserved::bitstring-size(size), rest::bitstring>> -> {:ok, {[], rest}, context}2417 │ ~2418 │2419 └─ lib/membrane_mp4/container/parse_helper.ex:76:35: Membrane.MP4.Container.ParseHelper.parse_field/324202421 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 operator2422 │2423 113 │ <<int::signed-integer-size(size), rest::bitstring>> ->2424 │ ~2425 │2426 └─ lib/membrane_mp4/container/parse_helper.ex:113:34: Membrane.MP4.Container.ParseHelper.parse_field/324272428 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 operator2429 │2430 123 │ <<uint::integer-size(size), rest::bitstring>> ->2431 │ ~2432 │2433 └─ lib/membrane_mp4/container/parse_helper.ex:123:28: Membrane.MP4.Container.ParseHelper.parse_field/324342435 warning: the variable "int_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator2436 │2437 133 │ <<int::integer-size(int_size), frac::integer-size(frac_size), rest::bitstring>> ->2438 │ ~2439 │2440 └─ lib/membrane_mp4/container/parse_helper.ex:133:27: Membrane.MP4.Container.ParseHelper.parse_field/324412442 warning: the variable "frac_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator2443 │2444 133 │ <<int::integer-size(int_size), frac::integer-size(frac_size), rest::bitstring>> ->2445 │ ~2446 │2447 └─ lib/membrane_mp4/container/parse_helper.ex:133:57: Membrane.MP4.Container.ParseHelper.parse_field/324482449 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 operator2450 │2451 147 │ <<bin::bitstring-size(size), rest::bitstring>> -> {:ok, {bin, rest}, context}2452 │ ~2453 │2454 └─ lib/membrane_mp4/container/parse_helper.ex:147:29: Membrane.MP4.Container.ParseHelper.parse_field/324552456 warning: the variable "to_skip" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator2457 │2458 75 │ <<_to_skip::binary-size(to_skip), payload::binary-size(size), rest::binary>> ->2459 │ ~2460 │2461 └─ lib/membrane_mp4/demuxer/isom/samples_info.ex:75:31: Membrane.MP4.Demuxer.ISOM.SamplesInfo.do_get_samples/324622463 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 operator2464 │2465 75 │ <<_to_skip::binary-size(to_skip), payload::binary-size(size), rest::binary>> ->2466 │ ~2467 │2468 └─ lib/membrane_mp4/demuxer/isom/samples_info.ex:75:62: Membrane.MP4.Demuxer.ISOM.SamplesInfo.do_get_samples/324692470 warning: the variable "mdat_header_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator2471 │2472 376 │ <<_header::binary-size(mdat_header_size), content::binary>> = state.partial2473 │ ~2474 │2475 └─ lib/membrane_mp4/demuxer/isom.ex:376:32: Membrane.MP4.Demuxer.ISOM.handle_can_read_mdat_box/224762477 warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:24782479 %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{&1 | track_with_keyframes?: is_video_pad}24802481 but got type:24822483 dynamic()24842485 instead of using &1, you must define an anonymous function, define a variable and pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"24862487 type warning found at:2488 │2489 301 │ &%SamplesQueue{&1 | track_with_keyframes?: is_video_pad}2490 │ ~2491 │2492 └─ lib/membrane_mp4/muxer/cmaf.ex:301:10: Membrane.MP4.Muxer.CMAF.handle_stream_format/424932494 warning: a struct for Membrane.Buffer is expected on struct update:24952496 %Membrane.Buffer{sample | dts: Membrane.Buffer.get_dts_or_pts(sample)}24972498 but got type:24992500 dynamic()25012502 where "sample" was given the type:25032504 # type: dynamic()2505 # from: lib/membrane_mp4/muxer/cmaf.ex:341:492506 sample25072508 when defining the variable "sample", you must also pattern match on "%Membrane.Buffer{}"25092510 type warning found at:2511 │2512 348 │ sample = %Buffer{sample | dts: Buffer.get_dts_or_pts(sample)}2513 │ ~2514 │2515 └─ lib/membrane_mp4/muxer/cmaf.ex:348:14: Membrane.MP4.Muxer.CMAF.handle_buffer/425162517 warning: a struct for Membrane.Buffer is expected on struct update:25182519 %Membrane.Buffer{sample | metadata: sample_metadata}25202521 but got type:25222523 dynamic(%{..., metadata: map()})25242525 where "sample" was given the type:25262527 # type: dynamic(%{..., metadata: map()})2528 # from: lib/membrane_mp4/muxer/cmaf.ex:489:172529 Map.put(2530 sample.metadata,2531 :duration,2532 Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.last_sample(queue).metadata.duration2533 )25342535 when defining the variable "sample", you must also pattern match on "%Membrane.Buffer{}"25362537 type warning found at:2538 │2539 491 │ sample = %Buffer{sample | metadata: sample_metadata}2540 │ ~2541 │2542 └─ lib/membrane_mp4/muxer/cmaf.ex:491:20: Membrane.MP4.Muxer.CMAF.generate_end_of_stream_segment/425432544 warning: a struct for Membrane.Buffer is expected on struct update:25452546 %Membrane.Buffer{buffer | dts: Membrane.Buffer.get_dts_or_pts(buffer)}25472548 but got type:25492550 dynamic()25512552 where "buffer" was given the type:25532554 # type: dynamic()2555 # from: lib/membrane_mp4/muxer/isom.ex2556 {{Membrane.Pad, :input, pad_ref}, {:buffer, buffer}}25572558 when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"25592560 type warning found at:2561 │2562 189 │ buffer = %Buffer{buffer | dts: Buffer.get_dts_or_pts(buffer)}2563 │ ~2564 │2565 └─ lib/membrane_mp4/muxer/isom.ex:189:14: Membrane.MP4.Muxer.ISOM.handle_queue_item/225662567 warning: a struct for Membrane.Buffer is expected on struct update:25682569 %Membrane.Buffer{prev_sample | metadata: prev_sample_metadata}25702571 but got type:25722573 dynamic(%{..., dts: term(), metadata: map()})25742575 where "prev_sample" was given the types:25762577 # type: dynamic(not nil)2578 # from: lib/membrane_mp4/muxer/cmaf.ex:7222579 prev_sample == nil25802581 # type: dynamic(%{..., dts: term()})2582 # from: lib/membrane_mp4/muxer/cmaf.ex:7252583 Numbers.sub(sample.dts, prev_sample.dts)25842585 # type: dynamic(%{..., dts: term(), metadata: map()})2586 # from: lib/membrane_mp4/muxer/cmaf.ex:726:342587 Map.put(prev_sample.metadata, :duration, duration)25882589 when defining the variable "prev_sample", you must also pattern match on "%Membrane.Buffer{}"25902591 type warning found at:2592 │2593 727 │ prev_sample = %Buffer{prev_sample | metadata: prev_sample_metadata}2594 │ ~2595 │2596 └─ lib/membrane_mp4/muxer/cmaf.ex:727:21: Membrane.MP4.Muxer.CMAF.process_buffer_awaiting_duration/325972598 warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:25992600 %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{2601 queue2602 | collected_samples_duration: queue.collected_samples_duration + sample.metadata.duration,2603 target_samples: [sample | queue.target_samples]2604 }26052606 but got type:26072608 dynamic()26092610 where "queue" was given the type:26112612 # type: dynamic()2613 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:125:162614 queue26152616 when defining the variable "queue", you must also pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"26172618 type warning found at:2619 │2620 127 │ %__MODULE__{2621 │ ~2622 │2623 └─ lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:127:5: Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.do_push/626242625 warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:26262627 %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{2628 queue2629 | excess_samples: [sample | queue.excess_samples]2630 }26312632 but got type:26332634 dynamic(%{..., collectable?: not false and not nil})26352636 where "queue" was given the types:26372638 # type: dynamic(%{..., collectable?: term()})2639 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:142640 queue.collectable?26412642 # type: dynamic(%{..., collectable?: not false and not nil})2643 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:142644 queue.collectable?26452646 when defining the variable "queue", you must also pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"26472648 type warning found at:2649 │2650 186 │ %__MODULE__{queue | excess_samples: [sample | queue.excess_samples]}2651 │ ~2652 │2653 └─ lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:186:7: Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.do_push/626542655 warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:26562657 %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{2658 queue2659 | collectable?: true,2660 target_samples: Enum.reverse(target_samples),2661 collected_samples_duration: total_duration(target_samples),2662 excess_samples: [sample]2663 }26642665 but got type:26662667 dynamic(%{2668 ...,2669 collectable?: false or nil,2670 excess_samples: list(term()),2671 target_samples: term(),2672 track_with_keyframes?: true2673 })26742675 where "queue" was given the types:26762677 # type: dynamic(%{..., collectable?: term()})2678 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:142679 queue.collectable?26802681 # type: dynamic(%{..., collectable?: false or nil})2682 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:142683 queue.collectable?26842685 # type: dynamic(%{..., collectable?: false or nil, track_with_keyframes?: term()})2686 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:188:162687 queue.track_with_keyframes?26882689 # type: dynamic(%{..., collectable?: false or nil, track_with_keyframes?: boolean()})2690 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:188:162691 queue.track_with_keyframes?26922693 # type: dynamic(%{..., collectable?: false or nil, track_with_keyframes?: true})2694 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:188:162695 queue.track_with_keyframes?26962697 # type: dynamic(%{2698 ...,2699 collectable?: false or nil,2700 excess_samples: list(term()),2701 track_with_keyframes?: true2702 })2703 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:189:472704 queue.excess_samples ++ queue.target_samples27052706 # type: dynamic(%{2707 ...,2708 collectable?: false or nil,2709 excess_samples: list(term()),2710 target_samples: term(),2711 track_with_keyframes?: true2712 })2713 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:189:472714 queue.excess_samples ++ queue.target_samples27152716 when defining the variable "queue", you must also pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"27172718 type warning found at:2719 │2720 191 │ %__MODULE__{2721 │ ~2722 │2723 └─ lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:191:9: Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.do_push/627242725 warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:27262727 %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{2728 queue2729 | collectable?: true,2730 target_samples: Enum.reverse(queue.target_samples),2731 excess_samples: [sample | queue.excess_samples]2732 }27332734 but got type:27352736 dynamic(%{..., collectable?: false or nil, track_with_keyframes?: boolean()})27372738 where "queue" was given the types:27392740 # type: dynamic(%{..., collectable?: term()})2741 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:142742 queue.collectable?27432744 # type: dynamic(%{..., collectable?: false or nil})2745 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:142746 queue.collectable?27472748 # type: dynamic(%{..., collectable?: false or nil, track_with_keyframes?: term()})2749 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:188:162750 queue.track_with_keyframes?27512752 # type: dynamic(%{..., collectable?: false or nil, track_with_keyframes?: boolean()})2753 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:188:162754 queue.track_with_keyframes?27552756 when defining the variable "queue", you must also pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"27572758 type warning found at:2759 │2760 199 │ %__MODULE__{2761 │ ~2762 │2763 └─ lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:199:9: Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.do_push/627642765 warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:27662767 %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{2768 queue2769 | collectable?: false,2770 collected_samples_duration: 0,2771 target_samples: [],2772 excess_samples: []2773 }27742775 but got type:27762777 dynamic()27782779 where "queue" was given the type:27802781 # type: dynamic()2782 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:329:202783 queue27842785 when defining the variable "queue", you must also pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"27862787 type warning found at:2788 │2789 330 │ %__MODULE__{2790 │ ~2791 │2792 └─ lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:330:5: Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.reset_queue/127932794 warning: incompatible types given to Ratio.mult/2:27952796 Ratio.mult(2797 Ratio.new(sample.ts, engine.last_timescales[sample.track_id]),2798 10002799 )28002801 given types:28022803 dynamic(), -integer()-28042805 but expected one of:28062807 (2808 %Ratio{numerator: float() or integer(), denominator: float() or integer()},2809 %Ratio{numerator: float() or integer(), denominator: float() or integer()}2810 )28112812 where "engine" was given the types:28132814 # type: dynamic(%{..., samples_info: term()})2815 # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:182:122816 Enum.split_while(2817 engine.samples_info,2818 &(&1.offset - engine.how_many_segment_bytes_read < byte_size(mdat_box.content))2819 )28202821 # type: dynamic(%{..., how_many_segment_bytes_read: integer(), samples_info: term()})2822 # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:192:482823 sample.offset - engine.how_many_segment_bytes_read28242825 # type: dynamic(%{2826 ...,2827 how_many_segment_bytes_read: integer(),2828 last_timescales:2829 %{..., __struct__: atom()} or nil or empty_list() or non_empty_list(term(), term()) or2830 non_struct_map(),2831 samples_info: term()2832 })2833 # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:195:542834 engine.last_timescales[sample.track_id]28352836 where "sample" was given the types:28372838 # type: dynamic(%{..., offset: integer(), size: integer()})2839 # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:192:222840 binary_part(mdat_box.content, sample.offset - engine.how_many_segment_bytes_read, sample.size)28412842 # type: dynamic(%{..., offset: integer()})2843 # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:192:482844 sample.offset - engine.how_many_segment_bytes_read28452846 # type: dynamic(%{..., offset: integer(), size: integer(), ts: term()})2847 # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:195:172848 Ratio.new(sample.ts, engine.last_timescales[sample.track_id])28492850 # type: dynamic(%{..., offset: integer(), size: integer(), track_id: term(), ts: term()})2851 # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:195:542852 engine.last_timescales[sample.track_id]28532854 type warning found at:2855 │2856 196 │ |> Ratio.mult(1000)2857 │ ~2858 │2859 └─ lib/membrane_mp4/demuxer/cmaf/engine.ex:196:20: Membrane.MP4.Demuxer.CMAF.Engine.read_mdat/228602861 warning: the following clause will never match:28622863 {:error, :not_available_yet} ->28642865 it is expected to match on type:28662867 none()28682869 type warning found at:2870 │2871 288 │ {:error, :not_available_yet} -> {[], state}2872 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2873 │2874 └─ lib/membrane_mp4/demuxer/cmaf.ex:288: Membrane.MP4.Demuxer.CMAF.get_buffers/128752876Generated membrane_mp4_plugin app2877==> nimble_pool2878Compiling 2 files (.ex)2879Generated nimble_pool app2880==> finch2881Compiling 23 files (.ex)2882Generated finch app2883==> req2884Compiling 24 files (.ex)2885Generated req app2886==> bundlex2887Compiling 39 files (.ex)2888 warning: the following clause will never match:28892890 :custom ->28912892 because it attempts to match on the result of:28932894 Bundlex.Platform.get_target!()28952896 which has type:28972898 dynamic(:nerves)28992900 type warning found at:2901 │2902 82 │ :custom -> :nerves2903 │ ~~~~~~~~~~~~~~~~~~2904 │2905 └─ lib/bundlex.ex:82: Bundlex.platform/029062907Generated bundlex app2908==> bunch_native2909Bundlex: Building natives: lib, bunch2910Generated bunch_native app2911==> shmex2912Bundlex: Building natives: lib, shmex2913Compiling 2 files (.ex)2914Generated shmex app2915==> unifex2916Bundlex: Building natives: unifex2917/work/proj/deps_rpi4/unifex/c_src/unifex/cnode/unifex/cnode.c: In function 'unifex_cnode_init':2918/work/proj/deps_rpi4/unifex/c_src/unifex/cnode/unifex/cnode.c:172:49: warning: 'calloc' sizes specified with 'sizeof' in the earlier argument and not in the later argument [-Wcalloc-transposed-args]2919 172 | *env = (UnifexEnv){.node_name = calloc(sizeof(char), 256),2920 | ^~~~2921/work/proj/deps_rpi4/unifex/c_src/unifex/cnode/unifex/cnode.c:172:49: note: earlier argument should specify number of elements, later size of each element2922Compiling 33 files (.ex)2923 warning: unused require Bundlex.CNode2924 │2925 6 │ require Bundlex.CNode2926 │ ~2927 │2928 └─ lib/unifex/cnode.ex:6:329292930Generated unifex app2931==> ex_dtls2932Bundlex: Building natives: native2933Compiling 2 files (.ex)2934Generated ex_dtls app2935==> membrane_common_c2936Bundlex: Building natives: membrane, membrane_ringbuffer2937Compiling 1 file (.ex)2938Generated membrane_common_c app2939294003:00:00.125 [warning] Function decode marked as dirty does not match any function defined in spec (/work/proj/deps_rpi4/membrane_h264_ffmpeg_plugin/c_src/membrane_h264_ffmpeg_plugin/decoder.spec.exs).2941294203:00:00.125 [warning] Function flush marked as dirty does not match any function defined in spec (/work/proj/deps_rpi4/membrane_h264_ffmpeg_plugin/c_src/membrane_h264_ffmpeg_plugin/decoder.spec.exs).2943294403:00:00.169 [warning] Function flush marked as dirty does not match any function defined in spec (/work/proj/deps_rpi4/membrane_h264_ffmpeg_plugin/c_src/membrane_h264_ffmpeg_plugin/encoder.spec.exs).2945294603:00:00.169 [warning] Function encode marked as dirty does not match any function defined in spec (/work/proj/deps_rpi4/membrane_h264_ffmpeg_plugin/c_src/membrane_h264_ffmpeg_plugin/encoder.spec.exs).2947==> membrane_h264_ffmpeg_plugin2948Bundlex: Building natives: decoder, encoder2949warning: Bundlex: Couldn't load OS dependency using {:precompiled, "https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-n6.0-latest-linuxarm64-gpl-shared-6.0.tar.xz", ["libavcodec", "libavutil"]}29502951couldn't download and extract the precompiled dependency :ffmpeg due to:2952 ** (BundlexError) Cannot download file from https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-n6.0-latest-linuxarm64-gpl-shared-6.0.tar.xz2953 Response status: 404295429552956Loading using {:pkg_config, ["libavcodec", "libavutil"]}295729582959could not compile dependency :membrane_h264_ffmpeg_plugin, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile membrane_h264_ffmpeg_plugin --force", update it with "mix deps.update membrane_h264_ffmpeg_plugin" or clean it with "mix deps.clean membrane_h264_ffmpeg_plugin"2960==> nerves_compatibility_test2961** (Mix) Bundlex: Couldn't load OS dependency :ffmpeg of package membrane_h264_ffmpeg_plugin. Make sure to follow installation instructions that may be available in the readme of membrane_h264_ffmpeg_plugin.29622963Tried the following providers:29642965Provider `{:precompiled, "https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-n6.0-latest-linuxarm64-gpl-shared-6.0.tar.xz", ["libavcodec", "libavutil"]}` couldn't download and extract the precompiled dependency :ffmpeg due to:2966 ** (BundlexError) Cannot download file from https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-n6.0-latest-linuxarm64-gpl-shared-6.0.tar.xz2967 Response status: 40429682969Provider `{:pkg_config, ["libavcodec", "libavutil"]}` couldn't load ["libavcodec", "libavutil"] libraries with pkg-config due to:2970 ** (BundlexError) pkg-config error:2971 Code: 12972 Package libavcodec was not found in the pkg-config search path.2973 Perhaps you should add the directory containing `libavcodec.pc'2974 to the PKG_CONFIG_PATH environment variable2975 Package 'libavcodec', required by 'virtual:world', not found29762977