Build log
nerves_system_mangopi_mq_pro
membrane_rtc_engine_hls 0.10.0 · fail · run membrane_rtc_engine_hls-0.10.0-1790995953968
2980 of 2980 lines
1Resolving Hex dependencies...2Resolution completed in 0.578s3Unchanged: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: a struct for Protobuf.Protoc.Context is expected on struct update:540541 %Protobuf.Protoc.Context{ctx | package_prefix: package}542543 but got type:544545 dynamic()546547 where "ctx" was given the type:548549 # type: dynamic()550 # from: lib/protobuf/protoc/cli.ex:119:50551 ctx552553 when defining the variable "ctx", you must also pattern match on "%Protobuf.Protoc.Context{}"554555 type warning found at:556 │557 123 │ %Context{ctx | package_prefix: package}558 │ ~559 │560 └─ lib/protobuf/protoc/cli.ex:123:7: Protobuf.Protoc.CLI.parse_param/2561562 warning: a struct for Protobuf.Protoc.Context is expected on struct update:563564 %Protobuf.Protoc.Context{ctx | transform_module: Module.concat([module])}565566 but got type:567568 dynamic()569570 where "ctx" was given the type:571572 # type: dynamic()573 # from: lib/protobuf/protoc/cli.ex:127:51574 ctx575576 when defining the variable "ctx", you must also pattern match on "%Protobuf.Protoc.Context{}"577578 type warning found at:579 │580 128 │ %Context{ctx | transform_module: Module.concat([module])}581 │ ~582 │583 └─ lib/protobuf/protoc/cli.ex:128:5: Protobuf.Protoc.CLI.parse_param/2584585 warning: a struct for Protobuf.Protoc.Context is expected on struct update:586587 %Protobuf.Protoc.Context{ctx | one_file_per_module?: true}588589 but got type:590591 dynamic()592593 where "ctx" was given the type:594595 # type: dynamic()596 # from: lib/protobuf/protoc/cli.ex:131:53597 ctx598599 when defining the variable "ctx", you must also pattern match on "%Protobuf.Protoc.Context{}"600601 type warning found at:602 │603 134 │ %Context{ctx | one_file_per_module?: true}604 │ ~605 │606 └─ lib/protobuf/protoc/cli.ex:134:9: Protobuf.Protoc.CLI.parse_param/2607608 warning: a struct for Protobuf.Protoc.Context is expected on struct update:609610 %Protobuf.Protoc.Context{ctx | include_docs?: true}611612 but got type:613614 dynamic()615616 where "ctx" was given the type:617618 # type: dynamic()619 # from: lib/protobuf/protoc/cli.ex:141:46620 ctx621622 when defining the variable "ctx", you must also pattern match on "%Protobuf.Protoc.Context{}"623624 type warning found at:625 │626 144 │ %Context{ctx | include_docs?: true}627 │ ~628 │629 └─ lib/protobuf/protoc/cli.ex:144:9: Protobuf.Protoc.CLI.parse_param/2630631 warning: this clause of defp add_json_name_to_opts/3 is never used (or it will always fail/warn when invoked)632 │633 348 │ defp add_json_name_to_opts(opts, _syntax, _props), do: opts634 │ ~635 │636 └─ lib/protobuf/protoc/generator/message.ex:348:8: Protobuf.Protoc.Generator.Message.add_json_name_to_opts/3637638 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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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/mangopi_mq_pro/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_riscv64_nerves_linux_gnu1358Compiling 1 file (.ex)1359Generated nerves_toolchain_riscv64_nerves_linux_gnu app1360==> nerves_system_mangopi_mq_pro1361Generated nerves_system_mangopi_mq_pro 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_h265_format1435Compiling 1 file (.ex)1436Generated membrane_h265_format app1437==> membrane_h264_format1438Compiling 1 file (.ex)1439Generated membrane_h264_format app1440==> bimap1441Compiling 2 files (.ex)1442Generated bimap app1443==> membrane_aac_format1444Compiling 1 file (.ex)1445Generated membrane_aac_format app1446==> heap1447Compiling 4 files (.ex)1448Generated heap app1449==> membrane_opus_format1450Compiling 1 file (.ex)1451Generated membrane_opus_format app1452==> ex_sdp1453Compiling 26 files (.ex)1454Generated ex_sdp app1455==> ex_rtp1456Compiling 5 files (.ex)1457Generated ex_rtp app1458==> uboot_env1459Compiling 5 files (.ex)1460Generated uboot_env app1461==> qex1462Compiling 4 files (.ex)1463warning: x..y inside match is deprecated, you must always match on the step: x..y//var or x..y//_ if you want to ignore it1464 lib/qex.ex:45: Qex.new/114651466Generated qex app1467==> membrane_core1468Compiling 139 files (.ex)1469 warning: unused require Membrane.Core.Message (convert it to an alias instead)1470 │1471 7 │ require Membrane.Core.Message, as: Message1472 │ ~1473 │1474 └─ lib/membrane/core/parent/diamond_detection_controller.ex:7:314751476 warning: unused require Membrane.Core.Component1477 │1478 5 │ require Membrane.Core.Component1479 │ ~1480 │1481 └─ lib/membrane/core/child/lifecycle_controller.ex:5:314821483 warning: unused require Membrane.Core.Component1484 │1485 7 │ require Membrane.Core.Component1486 │ ~1487 │1488 └─ lib/membrane/core/timer_controller.ex:7:314891490 warning: unused require Membrane.Core.Helper.FastMap1491 │1492 138 │ require FastMap1493 │ ~1494 │1495 └─ lib/membrane/core/child/pad_model.ex:138:514961497 warning: unused require Membrane.Core.Child.PadModel1498 │1499 7 │ require Membrane.Core.Child.PadModel1500 │ ~1501 │1502 └─ lib/membrane/core/child/pad_controller.ex:7:315031504 warning: unused require Membrane.Core.Message (convert it to an alias instead)1505 │1506 19 │ require Membrane.Core.Message, as: Message1507 │ ~1508 │1509 └─ lib/membrane/core/element/manual_flow_controller.ex:19:315101511 warning: unused require Membrane.Logger1512 │1513 20 │ require Membrane.Logger1514 │ ~1515 │1516 └─ lib/membrane/core/element/manual_flow_controller.ex:20:315171518 warning: unused require Membrane.Core.Component1519 │1520 23 │ require Membrane.Core.Component1521 │ ~1522 │1523 └─ lib/membrane/core/parent/child_life_controller.ex:23:315241525 warning: unused require Membrane.Core.Message (convert it to an alias instead)1526 │1527 24 │ require Membrane.Core.Message, as: Message1528 │ ~1529 │1530 └─ lib/membrane/core/parent/child_life_controller.ex:24:315311532 warning: unused require Membrane.Core.Component1533 │1534 18 │ require Membrane.Core.Component1535 │ ~1536 │1537 └─ lib/membrane/core/parent/lifecycle_controller.ex:18:315381539 warning: unused require Membrane.Core.Message1540 │1541 19 │ require Membrane.Core.Message1542 │ ~1543 │1544 └─ lib/membrane/core/parent/lifecycle_controller.ex:19:315451546 warning: unused require Membrane.Core.Component1547 │1548 9 │ require Membrane.Core.Component1549 │ ~1550 │1551 └─ lib/membrane/core/parent/child_life_controller/startup_utils.ex:9:315521553 warning: unused require Membrane.Core.Message1554 │1555 20 │ require Membrane.Core.Message1556 │ ~1557 │1558 └─ lib/membrane/core/element/lifecycle_controller.ex:20:315591560 warning: unused require Membrane.Core.Message1561 │1562 7 │ require Membrane.Core.Message1563 │ ~1564 │1565 └─ lib/membrane/core/lifecycle_controller.ex:7:315661567 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 operator1568 │1569 103 │ <<part1::binary-size(at_pos), part2::binary>> = payload1570 │ ~1571 │1572 └─ lib/membrane/payload.ex:103:26: Membrane.Payload.BitString.split_at/215731574 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 operator1575 │1576 116 │ <<_dropped::binary-size(bytes), rest::binary>> = payload1577 │ ~1578 │1579 └─ lib/membrane/payload.ex:116:29: Membrane.Payload.BitString.drop/215801581 warning: unused require Membrane.Core.Message (convert it to an alias instead)1582 │1583 11 │ require Membrane.Core.Message, as: Message1584 │ ~1585 │1586 └─ lib/membrane/core/element/atomic_demand.ex:11:315871588 warning: unused require Membrane.Pad (convert it to an alias instead)1589 │1590 13 │ require Membrane.Pad, as: Pad1591 │ ~1592 │1593 └─ lib/membrane/core/element/atomic_demand.ex:13:315941595 warning: unused require Membrane.Core.Message1596 │1597 20 │ require Membrane.Core.Message1598 │ ~1599 │1600 └─ lib/membrane/bin.ex:20:316011602 warning: unused require Membrane.Core.Message (convert it to an alias instead)1603 │1604 24 │ require Membrane.Core.Message, as: Message1605 │ ~1606 │1607 └─ lib/membrane/core/element/effective_flow_controller.ex:24:316081609 warning: unused require Membrane.Pad (convert it to an alias instead)1610 │1611 26 │ require Membrane.Pad, as: Pad1612 │ ~1613 │1614 └─ lib/membrane/core/element/effective_flow_controller.ex:26:316151616 warning: unused require Membrane.Core.Message (convert it to an alias instead)1617 │1618 26 │ require Membrane.Core.Message, as: Message1619 │ ~1620 │1621 └─ lib/membrane/core/element/pad_controller.ex:26:316221623 warning: unused require Membrane.Pad (convert it to an alias instead)1624 │1625 29 │ require Membrane.Pad, as: Pad1626 │ ~1627 │1628 └─ lib/membrane/core/element/pad_controller.ex:29:316291630 warning: unused require Membrane.Pad (convert it to an alias instead)1631 │1632 18 │ require Membrane.Pad, as: Pad1633 │ ~1634 │1635 └─ lib/membrane/core/element/auto_flow_controller.ex:18:316361637 warning: unused require Membrane.Pad1638 │1639 15 │ require Membrane.Pad1640 │ ~1641 │1642 └─ lib/membrane/core/legacy_telemetry.ex:15:316431644 warning: unused require Membrane.Core.Component1645 │1646 14 │ require Membrane.Core.Component1647 │ ~1648 │1649 └─ lib/membrane/core/pipeline.ex:14:316501651 warning: unused require Membrane.Pad (convert it to an alias instead)1652 │1653 6 │ require Membrane.Pad, as: Pad1654 │ ~1655 │1656 └─ lib/membrane/core/element/diamond_detection_controller/path_in_grapth.ex:6:516571658 warning: unused require Membrane.Pad1659 │1660 11 │ require Membrane.Pad1661 │ ~1662 │1663 └─ lib/membrane/core/child/pad_spec_handler.ex:11:316641665 warning: unused require Membrane.Logger1666 │1667 81 │ require Membrane.Logger1668 │ ~1669 │1670 └─ lib/membrane/core/element/diamond_detection_controller.ex:81:316711672 warning: unused require Membrane.Pad (convert it to an alias instead)1673 │1674 82 │ require Membrane.Pad, as: Pad1675 │ ~1676 │1677 └─ lib/membrane/core/element/diamond_detection_controller.ex:82:316781679 warning: unused require Membrane.Core.Message (convert it to an alias instead)1680 │1681 63 │ require Membrane.Core.Message, as: Message1682 │ ~1683 │1684 └─ lib/membrane/pipeline.ex:63:316851686 warning: unused require Membrane.Core.Telemetry (convert it to an alias instead)1687 │1688 13 │ require Membrane.Core.Telemetry, as: Telemetry1689 │ ~1690 │1691 └─ lib/membrane/core/callback_handler.ex:13:316921693 warning: unused require Membrane.Logger1694 │1695 11 │ require Membrane.Logger1696 │ ~1697 │1698 └─ lib/membrane/core/pipeline/action_handler.ex:11:316991700 warning: unused require Membrane.Core.Telemetry (convert it to an alias instead)1701 │1702 42 │ require Membrane.Core.Telemetry, as: Telemetry1703 │ ~1704 │1705 └─ lib/membrane/core/element.ex:42:317061707 warning: unused require Membrane.Core.Message1708 │1709 11 │ require Message1710 │ ~1711 │1712 └─ lib/membrane/core/bin/action_handler.ex:11:317131714 warning: unused require Membrane.Core.Telemetry1715 │1716 23 │ require Membrane.Core.Telemetry1717 │ ~1718 │1719 └─ lib/membrane/core/element/stream_format_controller.ex:23:317201721 warning: unused require Membrane.Core.Message (convert it to an alias instead)1722 │1723 34 │ require Membrane.Core.Message, as: Message1724 │ ~1725 │1726 └─ lib/membrane/core/element/action_handler.ex:34:317271728 warning: unused require Membrane.Core.Telemetry (convert it to an alias instead)1729 │1730 36 │ require Membrane.Core.Telemetry, as: Telemetry1731 │ ~1732 │1733 └─ lib/membrane/core/element/action_handler.ex:36:317341735 warning: unused require Membrane.Core.Telemetry (convert it to an alias instead)1736 │1737 27 │ require Membrane.Core.Telemetry, as: Telemetry1738 │ ~1739 │1740 └─ lib/membrane/core/element/buffer_controller.ex:27:317411742 warning: unused require Membrane.Core.Message1743 │1744 24 │ require Membrane.Core.Message1745 │ ~1746 │1747 └─ lib/membrane/core/parent/child_life_controller/link_utils.ex:24:317481749 warning: unused require Membrane.Core.Telemetry1750 │1751 25 │ require Membrane.Core.Telemetry1752 │ ~1753 │1754 └─ lib/membrane/core/parent/child_life_controller/link_utils.ex:25:317551756 warning: unused require Membrane.Core.Message1757 │1758 24 │ require Membrane.Core.Message1759 │ ~1760 │1761 └─ lib/membrane/core/element/event_controller.ex:24:317621763 warning: unused require Membrane.Core.Telemetry1764 │1765 25 │ require Membrane.Core.Telemetry1766 │ ~1767 │1768 └─ lib/membrane/core/element/event_controller.ex:25:317691770 warning: unused require Membrane.Core.Message1771 │1772 90 │ require Membrane.Core.Message1773 │ ~1774 │1775 └─ lib/membrane/testing/pipeline.ex:90:317761777 warning: the following clause cannot match because the previous clauses already matched all possible values:17781779 _ ->17801781 it attempts to match on the result of:17821783 handler_reported?(component_type, callback)17841785 which has the already matched type:17861787 dynamic(false)17881789 type warning found at:1790 │1791 190 │ if handler_reported?(component_type, callback) do1792 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1793 │1794 └─ lib/membrane/core/telemetry.ex:190: Membrane.Core.Telemetry.track_callback_handler/517951796 warning: the right-hand side of || will never be executed:17971798 input_demand_unit || ...17991800 because the left-hand side always evaluates to:18011802 dynamic(not false and not nil)18031804 where "input_demand_unit" was given the type:18051806 # type: dynamic(not false and not nil)1807 # from: lib/membrane/core/element/pad_controller.ex:140:451808 {output_demand_unit, input_demand_unit} = resolve_demand_units(output_pad_info, pad_info)18091810 type warning found at:1811 │1812 155 │ receiver_demand_unit: input_demand_unit || :buffers,1813 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1814 │1815 └─ lib/membrane/core/element/pad_controller.ex:155: Membrane.Core.Element.PadController.do_handle_link/618161817 warning: the following clause is redundant:18181819 {[], next_state} ->18201821 previous clauses have already matched on the following types:18221823 {empty_list() or non_empty_list(term(), term()), term()}18241825 where "next_state" was given the type:18261827 # type: dynamic()1828 # from: lib/membrane/filter_aggregator.ex1829 {[], next_state}18301831 type warning found at:1832 │1833 186 │ {[], next_state} ->1834 │ ~1835 │1836 └─ lib/membrane/filter_aggregator.ex:186:24: Membrane.FilterAggregator.perform_actions/518371838Generated membrane_core app1839==> membrane_aac_plugin1840Compiling 6 files (.ex)1841 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 operator1842 │1843 89 │ <<frame::binary-size(size), rest::binary>> -> {:frame, frame, rest}1844 │ ~1845 │1846 └─ lib/membrane/aac/parser/adts.ex:89:28: Membrane.AAC.Parser.ADTS.extract_frame/418471848 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 operator1849 │1850 98 │ <<_adts::binary-size(adts_size), frame::binary-size(frame_size), rest::binary>> ->1851 │ ~1852 │1853 └─ lib/membrane/aac/parser/adts.ex:98:28: Membrane.AAC.Parser.ADTS.extract_frame/418541855 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 operator1856 │1857 98 │ <<_adts::binary-size(adts_size), frame::binary-size(frame_size), rest::binary>> ->1858 │ ~1859 │1860 └─ lib/membrane/aac/parser/adts.ex:98:59: Membrane.AAC.Parser.ADTS.extract_frame/418611862 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 operator1863 │1864 32 │ <<custom_frequency::integer-size(custom_frequency_length), channel_config_id::4,1865 │ ~1866 │1867 └─ lib/membrane/aac/parser/audio_specific_config.ex:32:38: Membrane.AAC.Parser.AudioSpecificConfig.parse_audio_specific_config/118681869 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 operator1870 │1871 60 │ <<_url::binary-size(url_length), rest::binary>> = rest1872 │ ~1873 │1874 └─ lib/membrane/aac/parser/esds.ex:60:29: Membrane.AAC.Parser.Esds.parse_esds/118751876 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 operator1877 │1878 92 │ <<payload::binary-size(payload_size), rest::binary>> = rest1879 │ ~1880 │1881 └─ lib/membrane/aac/parser/esds.ex:92:32: Membrane.AAC.Parser.Esds.unpack_esds_section/218821883 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 operator1884 │1885 96 │ <<payload::binary-size(payload_size), rest::binary>> = rest1886 │ ~1887 │1888 └─ lib/membrane/aac/parser/esds.ex:96:32: Membrane.AAC.Parser.Esds.unpack_esds_section/218891890 warning: a struct for Membrane.AAC.Filler.State is expected on struct update:18911892 %Membrane.AAC.Filler.State{state | frame_duration: new_duration, channels: stream_format.channels}18931894 but got type:18951896 dynamic()18971898 where "state" was given the type:18991900 # type: dynamic()1901 # from: lib/membrane/aac/filler.ex:71:571902 state19031904 when defining the variable "state", you must also pattern match on "%Membrane.AAC.Filler.State{}"19051906 type warning found at:1907 │1908 75 │ state = %State{state | frame_duration: new_duration, channels: stream_format.channels}1909 │ ~1910 │1911 └─ lib/membrane/aac/filler.ex:75:13: Membrane.AAC.Filler.handle_stream_format/419121913 warning: a struct for Membrane.Buffer is expected on struct update:19141915 %Membrane.Buffer{1916 buffer1917 | payload: silent_frame_payload,1918 pts: round(timestamp),1919 dts: round(timestamp)1920 }19211922 but got type:19231924 dynamic(%{..., pts: term()})19251926 where "buffer" was given the type:19271928 # type: dynamic(%{..., pts: term()})1929 # from: lib/membrane/aac/filler.ex:84:321930 buffer.pts19311932 when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"19331934 type warning found at:1935 │1936 96 │ %Buffer{1937 │ ~1938 │1939 └─ lib/membrane/aac/filler.ex:96:9: Membrane.AAC.Filler.handle_buffer/419401941 warning: a struct for Membrane.Buffer is expected on struct update:19421943 %Membrane.Buffer{1944 buffer1945 | payload:1946 Membrane.AAC.Parser.ADTS.payload_to_adts(buffer.payload, ctx.pads.output.stream_format)1947 }19481949 but got type:19501951 dynamic(%{..., pts: integer()})19521953 where "buffer" was given the type:19541955 # type: dynamic(%{..., pts: integer()})1956 # from: lib/membrane/aac/parser.ex:111:121957 buffer = %{buffer | pts: round(Ratio.to_float(timestamp))}19581959 when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"19601961 type warning found at:1962 │1963 116 │ %Buffer{1964 │ ~1965 │1966 └─ lib/membrane/aac/parser.ex:116:11: Membrane.AAC.Parser.handle_buffer/419671968Generated membrane_aac_plugin app1969==> membrane_h26x_plugin1970Compiling 31 files (.ex)1971Generated membrane_h26x_plugin app1972==> membrane_raw_audio_format1973Compiling 2 files (.ex)1974Generated membrane_raw_audio_format app1975==> membrane_rtp_format1976Compiling 5 files (.ex)1977Generated membrane_rtp_format app1978==> membrane_rtp_h264_plugin1979Compiling 8 files (.ex)1980 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 operator1981 │1982 37 │ <<header::1-binary, head::binary-size(preferred_size - 1), rest::binary>> ->1983 │ ~1984 │1985 └─ lib/rtp_h264/nal_formats/fu.ex:37:45: Membrane.RTP.H264.FU.serialize/219861987 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 operator1988 │1989 54 │ <<head::binary-size(preferred_size - 2), rest::binary>> when byte_size(rest) > 0 ->1990 │ ~1991 │1992 └─ lib/rtp_h264/nal_formats/fu.ex:54:27: Membrane.RTP.H264.FU.do_serialize/519931994 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 operator1995 │1996 120 │ <<_x::binary-size(offset), nalu::binary-size(nalu_size), remaining_aus::binary>> = rest1997 │ ~1998 │1999 └─ lib/rtp_h264/utils.ex:120:25: Membrane.RTP.H264.Utils.check_first_aggregation_unit/320002001 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 operator2002 │2003 120 │ <<_x::binary-size(offset), nalu::binary-size(nalu_size), remaining_aus::binary>> = rest2004 │ ~2005 │2006 └─ lib/rtp_h264/utils.ex:120:52: Membrane.RTP.H264.Utils.check_first_aggregation_unit/320072008 warning: a struct for Membrane.RTP.H264.Depayloader.State is expected on struct update:20092010 %Membrane.RTP.H264.Depayloader.State{state | parser_acc: nil}20112012 but got type:20132014 dynamic()20152016 where "state" was given the type:20172018 # type: dynamic()2019 # from: lib/rtp_h264/depayloader.ex:43:432020 state20212022 when defining the variable "state", you must also pattern match on "%Membrane.RTP.H264.Depayloader.State{}"20232024 type warning found at:2025 │2026 51 │ {[], %State{state | parser_acc: nil}}2027 │ ~2028 │2029 └─ lib/rtp_h264/depayloader.ex:51:14: Membrane.RTP.H264.Depayloader.handle_buffer/420302031 warning: a struct for Membrane.RTP.H264.Depayloader.State is expected on struct update:20322033 %Membrane.RTP.H264.Depayloader.State{state | parser_acc: nil}20342035 but got type:20362037 dynamic()20382039 where "state" was given the type:20402041 # type: dynamic()2042 # from: lib/rtp_h264/depayloader.ex:67:562043 state20442045 when defining the variable "state", you must also pattern match on "%Membrane.RTP.H264.Depayloader.State{}"20462047 type warning found at:2048 │2049 71 │ result = buffer_output(data, buffer, %State{state | parser_acc: nil})2050 │ ~2051 │2052 └─ lib/rtp_h264/depayloader.ex:71:46: Membrane.RTP.H264.Depayloader.handle_unit_type/420532054 warning: a struct for Membrane.Buffer is expected on struct update:20552056 %Membrane.Buffer{buffer | payload: &1}20572058 but got type:20592060 dynamic(%{..., payload: term()})20612062 where "buffer" was given the type:20632064 # type: dynamic(%{..., payload: term()})2065 # from: lib/rtp_h264/payloader.ex:187:112066 Membrane.RTP.H264.FU.serialize(2067 buffer.payload,2068 state.max_payload_size2069 )20702071 when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"20722073 type warning found at:2074 │2075 188 │ |> Enum.map(&%Buffer{buffer | payload: &1})2076 │ ~2077 │2078 └─ lib/rtp_h264/payloader.ex:188:18: Membrane.RTP.H264.Payloader.use_fu_a/220792080 warning: a struct for Membrane.RTP.H264.Depayloader.State is expected on struct update:20812082 %Membrane.RTP.H264.Depayloader.State{state | parser_acc: fu}20832084 but got type:20852086 dynamic()20872088 where "state" was given the type:20892090 # type: dynamic()2091 # from: lib/rtp_h264/depayloader.ex:67:562092 state20932094 when defining the variable "state", you must also pattern match on "%Membrane.RTP.H264.Depayloader.State{}"20952096 type warning found at:2097 │2098 75 │ result = {[], %State{state | parser_acc: fu}}2099 │ ~2100 │2101 └─ lib/rtp_h264/depayloader.ex:75:23: Membrane.RTP.H264.Depayloader.handle_unit_type/421022103 warning: a struct for Membrane.Buffer is expected on struct update:21042105 %Membrane.Buffer{buffer | payload: add_prefix(&1)}21062107 but got type:21082109 dynamic()21102111 where "buffer" was given the type:21122113 # type: dynamic()2114 # from: lib/rtp_h264/depayloader.ex:83:512115 buffer21162117 when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"21182119 type warning found at:2120 │2121 85 │ buffers = Enum.map(result, &%Buffer{buffer | payload: add_prefix(&1)})2122 │ ~2123 │2124 └─ lib/rtp_h264/depayloader.ex:85:35: Membrane.RTP.H264.Depayloader.handle_unit_type/421252126 warning: a struct for Membrane.Buffer is expected on struct update:21272128 %Membrane.Buffer{buffer | payload: add_prefix(data)}21292130 but got type:21312132 dynamic()21332134 where "buffer" was given the type:21352136 # type: dynamic()2137 # from: lib/rtp_h264/depayloader.ex:95:312138 buffer21392140 when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"21412142 type warning found at:2143 │2144 96 │ [buffer: {:output, %Buffer{buffer | payload: add_prefix(data)}}]2145 │ ~2146 │2147 └─ lib/rtp_h264/depayloader.ex:96:24: Membrane.RTP.H264.Depayloader.action_from_data/221482149 warning: a struct for Membrane.RTP.H264.FU is expected on struct update:21502151 %Membrane.RTP.H264.FU{acc | data: [packet]}21522153 but got type:21542155 dynamic()21562157 where "acc" was given the type:21582159 # type: dynamic()2160 # from: lib/rtp_h264/nal_formats/fu.ex:73:542161 acc21622163 when defining the variable "acc", you must also pattern match on "%Membrane.RTP.H264.FU{}"21642165 type warning found at:2166 │2167 74 │ do: {:incomplete, %__MODULE__{acc | data: [packet]}}2168 │ ~2169 │2170 └─ lib/rtp_h264/nal_formats/fu.ex:74:23: Membrane.RTP.H264.FU.do_parse/321712172Generated membrane_rtp_h264_plugin app2173==> membrane_rtp_vp8_plugin2174Compiling 6 files (.ex)2175 warning: a struct for Membrane.RTP.VP8.PayloadDescriptor is expected on struct update:21762177 %Membrane.RTP.VP8.PayloadDescriptor{descriptor_acc | i: i, l: l, t: t, k: k}21782179 but got type:21802181 dynamic()21822183 where "descriptor_acc" was given the type:21842185 # type: dynamic()2186 # from: lib/membrane_rtp_vp8/payload_descriptor.ex:130:102187 descriptor_acc21882189 when defining the variable "descriptor_acc", you must also pattern match on "%Membrane.RTP.VP8.PayloadDescriptor{}"21902191 type warning found at:2192 │2193 136 │ {:ok, {%__MODULE__{descriptor_acc | i: i, l: l, t: t, k: k}, rest}}2194 │ ~2195 │2196 └─ lib/membrane_rtp_vp8/payload_descriptor.ex:136:12: Membrane.RTP.VP8.PayloadDescriptor.get_extended_control_bits/221972198 warning: a struct for Membrane.RTP.VP8.PayloadDescriptor is expected on struct update:21992200 %Membrane.RTP.VP8.PayloadDescriptor{descriptor_acc | m: 0, picture_id: picture_id}22012202 but got type:22032204 dynamic()22052206 where "descriptor_acc" was given the type:22072208 # type: dynamic()2209 # from: lib/membrane_rtp_vp8/payload_descriptor.ex:143:232210 descriptor_acc22112212 when defining the variable "descriptor_acc", you must also pattern match on "%Membrane.RTP.VP8.PayloadDescriptor{}"22132214 type warning found at:2215 │2216 145 │ do: {:ok, {%__MODULE__{descriptor_acc | m: 0, picture_id: picture_id}, rest}}2217 │ ~2218 │2219 └─ lib/membrane_rtp_vp8/payload_descriptor.ex:145:19: Membrane.RTP.VP8.PayloadDescriptor.get_picture_id/222202221 warning: a struct for Membrane.RTP.VP8.PayloadDescriptor is expected on struct update:22222223 %Membrane.RTP.VP8.PayloadDescriptor{descriptor_acc | m: 1, picture_id: picture_id}22242225 but got type:22262227 dynamic()22282229 where "descriptor_acc" was given the type:22302231 # type: dynamic()2232 # from: lib/membrane_rtp_vp8/payload_descriptor.ex:147:232233 descriptor_acc22342235 when defining the variable "descriptor_acc", you must also pattern match on "%Membrane.RTP.VP8.PayloadDescriptor{}"22362237 type warning found at:2238 │2239 149 │ do: {:ok, {%__MODULE__{descriptor_acc | m: 1, picture_id: picture_id}, rest}}2240 │ ~2241 │2242 └─ lib/membrane_rtp_vp8/payload_descriptor.ex:149:19: Membrane.RTP.VP8.PayloadDescriptor.get_picture_id/222432244 warning: a struct for Membrane.RTP.VP8.PayloadDescriptor is expected on struct update:22452246 %Membrane.RTP.VP8.PayloadDescriptor{descriptor_acc | tl0picidx: tl0picidx}22472248 but got type:22492250 dynamic()22512252 where "descriptor_acc" was given the type:22532254 # type: dynamic()2255 # from: lib/membrane_rtp_vp8/payload_descriptor.ex:156:382256 descriptor_acc22572258 when defining the variable "descriptor_acc", you must also pattern match on "%Membrane.RTP.VP8.PayloadDescriptor{}"22592260 type warning found at:2261 │2262 158 │ do: {:ok, {%__MODULE__{descriptor_acc | tl0picidx: tl0picidx}, rest}}2263 │ ~2264 │2265 └─ lib/membrane_rtp_vp8/payload_descriptor.ex:158:19: Membrane.RTP.VP8.PayloadDescriptor.get_temporal_level_zero_index/222662267 warning: a struct for Membrane.RTP.VP8.Depayloader.State is expected on struct update:22682269 %Membrane.RTP.VP8.Depayloader.State{2270 state2271 | frame_acc: %Membrane.RTP.VP8.Frame{fragments: [], last_seq_num: nil, last_timestamp: nil}2272 }22732274 but got type:22752276 dynamic()22772278 where "state" was given the type:22792280 # type: dynamic()2281 # from: lib/membrane_rtp_vp8/depayloader.ex:40:602282 state22832284 when defining the variable "state", you must also pattern match on "%Membrane.RTP.VP8.Depayloader.State{}"22852286 type warning found at:2287 │2288 41 │ do: {[forward: event], %State{state | frame_acc: %Frame{}}}2289 │ ~2290 │2291 └─ lib/membrane_rtp_vp8/depayloader.ex:41:28: Membrane.RTP.VP8.Depayloader.handle_event/422922293 warning: a struct for Membrane.Buffer is expected on struct update:22942295 %Membrane.Buffer{state.first_buffer | payload: frame}22962297 but got type:22982299 dynamic()23002301 where "state" was given the types:23022303 # type: dynamic(not %Membrane.RTP.VP8.Depayloader.State{first_buffer: nil})2304 # from: lib/membrane_rtp_vp8/depayloader.ex:52:422305 state23062307 # type: dynamic(2308 %{..., frame_acc: %{..., fragments: term()}} and2309 not %Membrane.RTP.VP8.Depayloader.State{first_buffer: nil}2310 )2311 # from: lib/membrane_rtp_vp8/depayloader.ex:53:272312 Membrane.RTP.VP8.Frame.flush(state.frame_acc)23132314 # type: dynamic(2315 %{..., first_buffer: term(), frame_acc: %{..., fragments: term()}} and2316 not %Membrane.RTP.VP8.Depayloader.State{first_buffer: nil}2317 )2318 # from: lib/membrane_rtp_vp8/depayloader.ex:56:262319 %Membrane.Buffer{...}23202321 you must assign "state.first_buffer" to variable and pattern match on "%Membrane.Buffer{}"23222323 type warning found at:2324 │2325 56 │ buffer: {:output, %Buffer{state.first_buffer | payload: frame}},2326 │ ~2327 │2328 └─ lib/membrane_rtp_vp8/depayloader.ex:56:26: Membrane.RTP.VP8.Depayloader.handle_end_of_stream/323292330 warning: a struct for Membrane.RTP.VP8.Depayloader.State is expected on struct update:23312332 %Membrane.RTP.VP8.Depayloader.State{state | frame_acc: acc}23332334 but got type:23352336 dynamic(%{..., frame_acc: term()})23372338 where "state" was given the type:23392340 # type: dynamic(%{..., frame_acc: term()})2341 # from: lib/membrane_rtp_vp8/depayloader.ex:76:162342 Membrane.RTP.VP8.Frame.parse(buffer, state.frame_acc)23432344 when defining the variable "state", you must also pattern match on "%Membrane.RTP.VP8.Depayloader.State{}"23452346 type warning found at:2347 │2348 78 │ {:ok, [], %State{state | frame_acc: acc}}2349 │ ~2350 │2351 └─ lib/membrane_rtp_vp8/depayloader.ex:78:19: Membrane.RTP.VP8.Depayloader.parse_buffer/223522353 warning: a struct for Membrane.RTP.VP8.Depayloader.State is expected on struct update:23542355 %Membrane.RTP.VP8.Depayloader.State{state | frame_acc: acc, first_buffer: buffer}23562357 but got type:23582359 dynamic(%{..., first_buffer: %{..., payload: term()}, frame_acc: term()})23602361 where "state" was given the types:23622363 # type: dynamic(%{..., frame_acc: term()})2364 # from: lib/membrane_rtp_vp8/depayloader.ex:76:162365 Membrane.RTP.VP8.Frame.parse(buffer, state.frame_acc)23662367 # type: dynamic(%{..., first_buffer: %{..., payload: term()}, frame_acc: term()})2368 # from: lib/membrane_rtp_vp8/depayloader.ex:81:92369 {:ok, [buffer: {:output, %{state.first_buffer | payload: frame}}],2370 %Membrane.RTP.VP8.Depayloader.State{...}}23712372 when defining the variable "state", you must also pattern match on "%Membrane.RTP.VP8.Depayloader.State{}"23732374 type warning found at:2375 │2376 82 │ %State{state | frame_acc: acc, first_buffer: buffer}}2377 │ ~2378 │2379 └─ lib/membrane_rtp_vp8/depayloader.ex:82:10: Membrane.RTP.VP8.Depayloader.parse_buffer/223802381Generated membrane_rtp_vp8_plugin app2382==> membrane_funnel_plugin2383Compiling 2 files (.ex)2384Generated membrane_funnel_plugin app2385==> membrane_tee_plugin2386Compiling 3 files (.ex)2387238802:58:11.484 [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.2389Pads with `flow_control: :auto`: input, master.2390Pads with `flow_control: :push`: copy.23912392If you want get rid of this warning, pass `flow_control_hints?: false` option to `use Membrane.Filter`.23932394239502:58:11.529 [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.2396Pads with `flow_control: :auto`: input.2397Pads with `flow_control: :push`: output.23982399If you want get rid of this warning, pass `flow_control_hints?: false` option to `use Membrane.Filter`.24002401Generated membrane_tee_plugin app2402==> membrane_file_plugin2403Compiling 10 files (.ex)2404Generated membrane_file_plugin app2405==> membrane_timestamp_queue2406Compiling 1 file (.ex)2407Generated membrane_timestamp_queue app2408==> membrane_mp4_plugin2409Compiling 32 files (.ex)2410 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 operator2411 │2412 23 │ header_content: <<content::binary-size(content_size), data::binary>> <- rest,2413 │ ~2414 │2415 └─ lib/membrane_mp4/container/parse_helper.ex:23:50: Membrane.MP4.Container.ParseHelper.parse_boxes/424162417 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 operator2418 │2419 76 │ <<^reserved::bitstring-size(size), rest::bitstring>> -> {:ok, {[], rest}, context}2420 │ ~2421 │2422 └─ lib/membrane_mp4/container/parse_helper.ex:76:35: Membrane.MP4.Container.ParseHelper.parse_field/324232424 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 operator2425 │2426 113 │ <<int::signed-integer-size(size), rest::bitstring>> ->2427 │ ~2428 │2429 └─ lib/membrane_mp4/container/parse_helper.ex:113:34: Membrane.MP4.Container.ParseHelper.parse_field/324302431 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 operator2432 │2433 123 │ <<uint::integer-size(size), rest::bitstring>> ->2434 │ ~2435 │2436 └─ lib/membrane_mp4/container/parse_helper.ex:123:28: Membrane.MP4.Container.ParseHelper.parse_field/324372438 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 operator2439 │2440 133 │ <<int::integer-size(int_size), frac::integer-size(frac_size), rest::bitstring>> ->2441 │ ~2442 │2443 └─ lib/membrane_mp4/container/parse_helper.ex:133:27: Membrane.MP4.Container.ParseHelper.parse_field/324442445 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 operator2446 │2447 133 │ <<int::integer-size(int_size), frac::integer-size(frac_size), rest::bitstring>> ->2448 │ ~2449 │2450 └─ lib/membrane_mp4/container/parse_helper.ex:133:57: Membrane.MP4.Container.ParseHelper.parse_field/324512452 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 operator2453 │2454 147 │ <<bin::bitstring-size(size), rest::bitstring>> -> {:ok, {bin, rest}, context}2455 │ ~2456 │2457 └─ lib/membrane_mp4/container/parse_helper.ex:147:29: Membrane.MP4.Container.ParseHelper.parse_field/324582459 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 operator2460 │2461 376 │ <<_header::binary-size(mdat_header_size), content::binary>> = state.partial2462 │ ~2463 │2464 └─ lib/membrane_mp4/demuxer/isom.ex:376:32: Membrane.MP4.Demuxer.ISOM.handle_can_read_mdat_box/224652466 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 operator2467 │2468 75 │ <<_to_skip::binary-size(to_skip), payload::binary-size(size), rest::binary>> ->2469 │ ~2470 │2471 └─ lib/membrane_mp4/demuxer/isom/samples_info.ex:75:31: Membrane.MP4.Demuxer.ISOM.SamplesInfo.do_get_samples/324722473 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 operator2474 │2475 75 │ <<_to_skip::binary-size(to_skip), payload::binary-size(size), rest::binary>> ->2476 │ ~2477 │2478 └─ lib/membrane_mp4/demuxer/isom/samples_info.ex:75:62: Membrane.MP4.Demuxer.ISOM.SamplesInfo.do_get_samples/324792480 warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:24812482 %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{&1 | track_with_keyframes?: is_video_pad}24832484 but got type:24852486 dynamic()24872488 instead of using &1, you must define an anonymous function, define a variable and pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"24892490 type warning found at:2491 │2492 301 │ &%SamplesQueue{&1 | track_with_keyframes?: is_video_pad}2493 │ ~2494 │2495 └─ lib/membrane_mp4/muxer/cmaf.ex:301:10: Membrane.MP4.Muxer.CMAF.handle_stream_format/424962497 warning: a struct for Membrane.Buffer is expected on struct update:24982499 %Membrane.Buffer{sample | dts: Membrane.Buffer.get_dts_or_pts(sample)}25002501 but got type:25022503 dynamic()25042505 where "sample" was given the type:25062507 # type: dynamic()2508 # from: lib/membrane_mp4/muxer/cmaf.ex:341:492509 sample25102511 when defining the variable "sample", you must also pattern match on "%Membrane.Buffer{}"25122513 type warning found at:2514 │2515 348 │ sample = %Buffer{sample | dts: Buffer.get_dts_or_pts(sample)}2516 │ ~2517 │2518 └─ lib/membrane_mp4/muxer/cmaf.ex:348:14: Membrane.MP4.Muxer.CMAF.handle_buffer/425192520 warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:25212522 %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{2523 queue2524 | collected_samples_duration: queue.collected_samples_duration + sample.metadata.duration,2525 target_samples: [sample | queue.target_samples]2526 }25272528 but got type:25292530 dynamic()25312532 where "queue" was given the type:25332534 # type: dynamic()2535 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:125:162536 queue25372538 when defining the variable "queue", you must also pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"25392540 type warning found at:2541 │2542 127 │ %__MODULE__{2543 │ ~2544 │2545 └─ lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:127:5: Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.do_push/625462547 warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:25482549 %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{2550 queue2551 | excess_samples: [sample | queue.excess_samples]2552 }25532554 but got type:25552556 dynamic(%{..., collectable?: not false and not nil})25572558 where "queue" was given the types:25592560 # type: dynamic(%{..., collectable?: term()})2561 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:142562 queue.collectable?25632564 # type: dynamic(%{..., collectable?: not false and not nil})2565 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:142566 queue.collectable?25672568 when defining the variable "queue", you must also pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"25692570 type warning found at:2571 │2572 186 │ %__MODULE__{queue | excess_samples: [sample | queue.excess_samples]}2573 │ ~2574 │2575 └─ lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:186:7: Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.do_push/625762577 warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:25782579 %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{2580 queue2581 | collectable?: true,2582 target_samples: Enum.reverse(target_samples),2583 collected_samples_duration: total_duration(target_samples),2584 excess_samples: [sample]2585 }25862587 but got type:25882589 dynamic(%{2590 ...,2591 collectable?: false or nil,2592 excess_samples: list(term()),2593 target_samples: term(),2594 track_with_keyframes?: true2595 })25962597 where "queue" was given the types:25982599 # type: dynamic(%{..., collectable?: term()})2600 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:142601 queue.collectable?26022603 # type: dynamic(%{..., collectable?: false or nil})2604 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:142605 queue.collectable?26062607 # type: dynamic(%{..., collectable?: false or nil, track_with_keyframes?: term()})2608 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:188:162609 queue.track_with_keyframes?26102611 # type: dynamic(%{..., collectable?: false or nil, track_with_keyframes?: boolean()})2612 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:188:162613 queue.track_with_keyframes?26142615 # type: dynamic(%{..., collectable?: false or nil, track_with_keyframes?: true})2616 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:188:162617 queue.track_with_keyframes?26182619 # type: dynamic(%{2620 ...,2621 collectable?: false or nil,2622 excess_samples: list(term()),2623 track_with_keyframes?: true2624 })2625 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:189:472626 queue.excess_samples ++ queue.target_samples26272628 # type: dynamic(%{2629 ...,2630 collectable?: false or nil,2631 excess_samples: list(term()),2632 target_samples: term(),2633 track_with_keyframes?: true2634 })2635 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:189:472636 queue.excess_samples ++ queue.target_samples26372638 when defining the variable "queue", you must also pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"26392640 type warning found at:2641 │2642 191 │ %__MODULE__{2643 │ ~2644 │2645 └─ lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:191:9: Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.do_push/626462647 warning: a struct for Membrane.Buffer is expected on struct update:26482649 %Membrane.Buffer{sample | metadata: sample_metadata}26502651 but got type:26522653 dynamic(%{..., metadata: map()})26542655 where "sample" was given the type:26562657 # type: dynamic(%{..., metadata: map()})2658 # from: lib/membrane_mp4/muxer/cmaf.ex:489:172659 Map.put(2660 sample.metadata,2661 :duration,2662 Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.last_sample(queue).metadata.duration2663 )26642665 when defining the variable "sample", you must also pattern match on "%Membrane.Buffer{}"26662667 type warning found at:2668 │2669 491 │ sample = %Buffer{sample | metadata: sample_metadata}2670 │ ~2671 │2672 └─ lib/membrane_mp4/muxer/cmaf.ex:491:20: Membrane.MP4.Muxer.CMAF.generate_end_of_stream_segment/426732674 warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:26752676 %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{2677 queue2678 | collectable?: true,2679 target_samples: Enum.reverse(queue.target_samples),2680 excess_samples: [sample | queue.excess_samples]2681 }26822683 but got type:26842685 dynamic(%{..., collectable?: false or nil, track_with_keyframes?: boolean()})26862687 where "queue" was given the types:26882689 # type: dynamic(%{..., collectable?: term()})2690 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:142691 queue.collectable?26922693 # type: dynamic(%{..., collectable?: false or nil})2694 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:185:142695 queue.collectable?26962697 # type: dynamic(%{..., collectable?: false or nil, track_with_keyframes?: term()})2698 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:188:162699 queue.track_with_keyframes?27002701 # type: dynamic(%{..., collectable?: false or nil, track_with_keyframes?: boolean()})2702 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:188:162703 queue.track_with_keyframes?27042705 when defining the variable "queue", you must also pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"27062707 type warning found at:2708 │2709 199 │ %__MODULE__{2710 │ ~2711 │2712 └─ lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:199:9: Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.do_push/627132714 warning: a struct for Membrane.Buffer is expected on struct update:27152716 %Membrane.Buffer{prev_sample | metadata: prev_sample_metadata}27172718 but got type:27192720 dynamic(%{..., dts: term(), metadata: map()})27212722 where "prev_sample" was given the types:27232724 # type: dynamic(not nil)2725 # from: lib/membrane_mp4/muxer/cmaf.ex:7222726 prev_sample == nil27272728 # type: dynamic(%{..., dts: term()})2729 # from: lib/membrane_mp4/muxer/cmaf.ex:7252730 Numbers.sub(sample.dts, prev_sample.dts)27312732 # type: dynamic(%{..., dts: term(), metadata: map()})2733 # from: lib/membrane_mp4/muxer/cmaf.ex:726:342734 Map.put(prev_sample.metadata, :duration, duration)27352736 when defining the variable "prev_sample", you must also pattern match on "%Membrane.Buffer{}"27372738 type warning found at:2739 │2740 727 │ prev_sample = %Buffer{prev_sample | metadata: prev_sample_metadata}2741 │ ~2742 │2743 └─ lib/membrane_mp4/muxer/cmaf.ex:727:21: Membrane.MP4.Muxer.CMAF.process_buffer_awaiting_duration/327442745 warning: a struct for Membrane.MP4.Muxer.CMAF.TrackSamplesQueue is expected on struct update:27462747 %Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{2748 queue2749 | collectable?: false,2750 collected_samples_duration: 0,2751 target_samples: [],2752 excess_samples: []2753 }27542755 but got type:27562757 dynamic()27582759 where "queue" was given the type:27602761 # type: dynamic()2762 # from: lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:329:202763 queue27642765 when defining the variable "queue", you must also pattern match on "%Membrane.MP4.Muxer.CMAF.TrackSamplesQueue{}"27662767 type warning found at:2768 │2769 330 │ %__MODULE__{2770 │ ~2771 │2772 └─ lib/membrane_mp4/muxer/cmaf/track_samples_queue.ex:330:5: Membrane.MP4.Muxer.CMAF.TrackSamplesQueue.reset_queue/127732774 warning: a struct for Membrane.Buffer is expected on struct update:27752776 %Membrane.Buffer{buffer | dts: Membrane.Buffer.get_dts_or_pts(buffer)}27772778 but got type:27792780 dynamic()27812782 where "buffer" was given the type:27832784 # type: dynamic()2785 # from: lib/membrane_mp4/muxer/isom.ex2786 {{Membrane.Pad, :input, pad_ref}, {:buffer, buffer}}27872788 when defining the variable "buffer", you must also pattern match on "%Membrane.Buffer{}"27892790 type warning found at:2791 │2792 189 │ buffer = %Buffer{buffer | dts: Buffer.get_dts_or_pts(buffer)}2793 │ ~2794 │2795 └─ lib/membrane_mp4/muxer/isom.ex:189:14: Membrane.MP4.Muxer.ISOM.handle_queue_item/227962797 warning: incompatible types given to Ratio.mult/2:27982799 Ratio.mult(2800 Ratio.new(sample.ts, engine.last_timescales[sample.track_id]),2801 10002802 )28032804 given types:28052806 dynamic(), -integer()-28072808 but expected one of:28092810 (2811 %Ratio{numerator: float() or integer(), denominator: float() or integer()},2812 %Ratio{numerator: float() or integer(), denominator: float() or integer()}2813 )28142815 where "engine" was given the types:28162817 # type: dynamic(%{..., samples_info: term()})2818 # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:182:122819 Enum.split_while(2820 engine.samples_info,2821 &(&1.offset - engine.how_many_segment_bytes_read < byte_size(mdat_box.content))2822 )28232824 # type: dynamic(%{..., how_many_segment_bytes_read: integer(), samples_info: term()})2825 # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:192:482826 sample.offset - engine.how_many_segment_bytes_read28272828 # type: dynamic(%{2829 ...,2830 how_many_segment_bytes_read: integer(),2831 last_timescales:2832 %{..., __struct__: atom()} or nil or empty_list() or non_empty_list(term(), term()) or2833 non_struct_map(),2834 samples_info: term()2835 })2836 # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:195:542837 engine.last_timescales[sample.track_id]28382839 where "sample" was given the types:28402841 # type: dynamic(%{..., offset: integer(), size: integer()})2842 # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:192:222843 binary_part(mdat_box.content, sample.offset - engine.how_many_segment_bytes_read, sample.size)28442845 # type: dynamic(%{..., offset: integer()})2846 # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:192:482847 sample.offset - engine.how_many_segment_bytes_read28482849 # type: dynamic(%{..., offset: integer(), size: integer(), ts: term()})2850 # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:195:172851 Ratio.new(sample.ts, engine.last_timescales[sample.track_id])28522853 # type: dynamic(%{..., offset: integer(), size: integer(), track_id: term(), ts: term()})2854 # from: lib/membrane_mp4/demuxer/cmaf/engine.ex:195:542855 engine.last_timescales[sample.track_id]28562857 type warning found at:2858 │2859 196 │ |> Ratio.mult(1000)2860 │ ~2861 │2862 └─ lib/membrane_mp4/demuxer/cmaf/engine.ex:196:20: Membrane.MP4.Demuxer.CMAF.Engine.read_mdat/228632864 warning: the following clause will never match:28652866 {:error, :not_available_yet} ->28672868 it is expected to match on type:28692870 none()28712872 type warning found at:2873 │2874 288 │ {:error, :not_available_yet} -> {[], state}2875 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2876 │2877 └─ lib/membrane_mp4/demuxer/cmaf.ex:288: Membrane.MP4.Demuxer.CMAF.get_buffers/128782879Generated membrane_mp4_plugin app2880==> nimble_pool2881Compiling 2 files (.ex)2882Generated nimble_pool app2883==> finch2884Compiling 23 files (.ex)2885Generated finch app2886==> req2887Compiling 24 files (.ex)2888Generated req app2889==> bundlex2890Compiling 39 files (.ex)2891 warning: the following clause will never match:28922893 :custom ->28942895 because it attempts to match on the result of:28962897 Bundlex.Platform.get_target!()28982899 which has type:29002901 dynamic(:nerves)29022903 type warning found at:2904 │2905 82 │ :custom -> :nerves2906 │ ~~~~~~~~~~~~~~~~~~2907 │2908 └─ lib/bundlex.ex:82: Bundlex.platform/029092910Generated bundlex app2911==> bunch_native2912Bundlex: Building natives: lib, bunch2913Generated bunch_native app2914==> shmex2915Bundlex: Building natives: lib, shmex2916Compiling 2 files (.ex)2917Generated shmex app2918==> unifex2919Bundlex: Building natives: unifex2920/work/proj/deps_mangopi_mq_pro/unifex/c_src/unifex/cnode/unifex/cnode.c: In function 'unifex_cnode_init':2921/work/proj/deps_mangopi_mq_pro/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]2922 172 | *env = (UnifexEnv){.node_name = calloc(sizeof(char), 256),2923 | ^~~~2924/work/proj/deps_mangopi_mq_pro/unifex/c_src/unifex/cnode/unifex/cnode.c:172:49: note: earlier argument should specify number of elements, later size of each element2925Compiling 33 files (.ex)2926 warning: unused require Bundlex.CNode2927 │2928 6 │ require Bundlex.CNode2929 │ ~2930 │2931 └─ lib/unifex/cnode.ex:6:329322933Generated unifex app2934==> ex_dtls2935Bundlex: Building natives: native2936Compiling 2 files (.ex)2937Generated ex_dtls app2938==> membrane_common_c2939Bundlex: Building natives: membrane, membrane_ringbuffer2940Compiling 1 file (.ex)2941Generated membrane_common_c app2942294302:58:29.522 [warning] Function decode marked as dirty does not match any function defined in spec (/work/proj/deps_mangopi_mq_pro/membrane_h264_ffmpeg_plugin/c_src/membrane_h264_ffmpeg_plugin/decoder.spec.exs).2944294502:58:29.522 [warning] Function flush marked as dirty does not match any function defined in spec (/work/proj/deps_mangopi_mq_pro/membrane_h264_ffmpeg_plugin/c_src/membrane_h264_ffmpeg_plugin/decoder.spec.exs).2946294702:58:29.571 [warning] Function flush marked as dirty does not match any function defined in spec (/work/proj/deps_mangopi_mq_pro/membrane_h264_ffmpeg_plugin/c_src/membrane_h264_ffmpeg_plugin/encoder.spec.exs).2948294902:58:29.571 [warning] Function encode marked as dirty does not match any function defined in spec (/work/proj/deps_mangopi_mq_pro/membrane_h264_ffmpeg_plugin/c_src/membrane_h264_ffmpeg_plugin/encoder.spec.exs).2950==> membrane_h264_ffmpeg_plugin2951Bundlex: Building natives: decoder, encoder2952warning: Bundlex: Couldn't load OS dependency using {:precompiled, "https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-n6.0-latest-linux64-gpl-shared-6.0.tar.xz", ["libavcodec", "libavutil"]}29532954couldn't download and extract the precompiled dependency :ffmpeg due to:2955 ** (BundlexError) Cannot download file from https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-n6.0-latest-linux64-gpl-shared-6.0.tar.xz2956 Response status: 404295729582959Loading using {:pkg_config, ["libavcodec", "libavutil"]}296029612962could 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"2963==> nerves_compatibility_test2964** (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.29652966Tried the following providers:29672968Provider `{:precompiled, "https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-n6.0-latest-linux64-gpl-shared-6.0.tar.xz", ["libavcodec", "libavutil"]}` couldn't download and extract the precompiled dependency :ffmpeg due to:2969 ** (BundlexError) Cannot download file from https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-n6.0-latest-linux64-gpl-shared-6.0.tar.xz2970 Response status: 40429712972Provider `{:pkg_config, ["libavcodec", "libavutil"]}` couldn't load ["libavcodec", "libavutil"] libraries with pkg-config due to:2973 ** (BundlexError) pkg-config error:2974 Code: 12975 Package libavcodec was not found in the pkg-config search path.2976 Perhaps you should add the directory containing `libavcodec.pc'2977 to the PKG_CONFIG_PATH environment variable2978 Package 'libavcodec', required by 'virtual:world', not found29792980