membrane_element_ffmpeg_h264

Build log

host

membrane_element_ffmpeg_h264 0.4.1 · fail · run membrane_element_ffmpeg_h264-0.4.1-1790990065025
943 of 943 lines
1Resolving Hex dependencies...2Resolution completed in 0.171s3Unchanged:4  bunch 1.6.45  bunch_native 0.3.06  bundlex 0.4.17  circular_buffer 1.1.08  coerce 1.0.29  elixir_make 0.10.010  interactive_cmd 0.1.411  membrane_caps_video_h264 0.2.1 RETIRED!12    (renamed) Renamed to membrane_h264_format13  membrane_caps_video_raw 0.1.014  membrane_common_c 0.4.015  membrane_core 0.5.316  membrane_element_ffmpeg_h264 0.4.1 RETIRED!17    (renamed) Renamed to membrane_h264_ffmpeg_plugin18  nerves 2.0.0-pre.219  nerves_discovery 0.1.520  nerves_logging 0.2.421  nerves_runtime 0.13.1322  nerves_system_bbb 2.30.223  nerves_system_br 1.34.424  nerves_system_mangopi_mq_pro 0.17.225  nerves_system_qemu_aarch64 0.4.226  nerves_system_rpi0 2.1.227  nerves_system_rpi4 2.1.228  nerves_system_rpi5 2.1.229  nerves_system_trellis 0.5.030  nerves_system_x86_64 1.34.231  nerves_toolchain_aarch64_nerves_linux_gnu 15.3.132  nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.133  nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.134  nerves_toolchain_riscv64_nerves_linux_gnu 15.3.135  nerves_toolchain_x86_64_nerves_linux_musl 15.3.136  nerves_uevent 0.1.737  numbers 5.2.538  property_table 0.3.439  qex 0.5.240  ratio 2.4.241  ring_logger 0.11.742  secure_random 0.5.143  shmex 0.3.044  tablet 0.3.345  toolshed 0.5.046  uboot_env 1.0.247  unifex 0.3.348Found retired packages, see above for details49All dependencies have been fetched50==> membrane_caps_video_h26451Compiling 1 file (.ex)52Generated membrane_caps_video_h264 app53==> membrane_caps_video_raw54Compiling 1 file (.ex)55Generated membrane_caps_video_raw app56==> ratio57Compiling 5 files (.ex)58     warning: <|> is deprecated. Use another pipe-like operator59     │60 154 │   def numerator <|> denominator61     │                 ~62     │63     └─ lib/ratio.ex:154:176465     warning: <|> is deprecated. Use another pipe-like operator66     │67 156 │   def _numerator <|> 0 do68     │                  ~69     │70     └─ lib/ratio.ex:156:187172     warning: <|> is deprecated. Use another pipe-like operator73     │74 160 │   def numerator <|> denominator when is_integer(numerator) and is_integer(denominator) do75     │                 ~76     │77     └─ lib/ratio.ex:160:177879     warning: <|> is deprecated. Use another pipe-like operator80     │81 166 │   def numerator <|> denominator when is_float(numerator) do82     │                 ~83     │84     └─ lib/ratio.ex:166:178586     warning: <|> is deprecated. Use another pipe-like operator87     │88 170 │   def numerator <|> denominator when is_float(denominator) do89     │                 ~90     │91     └─ lib/ratio.ex:170:179293     warning: <|> is deprecated. Use another pipe-like operator94     │95 174 │   def (numerator = %Ratio{}) <|> (denominator = %Ratio{}) do96     │                              ~97     │98     └─ lib/ratio.ex:174:3099100     warning: <|> is deprecated. Use another pipe-like operator101     │102 179 │     def (numerator = %Decimal{}) <|> (denominator = %Decimal{}) do103     │                                  ~104     │105     └─ lib/ratio.ex:179:34106107     warning: <|> is deprecated. Use another pipe-like operator108     │109 184 │     def (numerator = %Decimal{}) <|> denominator when is_float(denominator) do110     │                                  ~111     │112     └─ lib/ratio.ex:184:34113114     warning: <|> is deprecated. Use another pipe-like operator115     │116 189 │     def numerator <|> (denominator = %Decimal{}) when is_float(numerator) do117     │                   ~118     │119     └─ lib/ratio.ex:189:19120121     warning: <|> is deprecated. Use another pipe-like operator122     │123 194 │     def (numerator = %Decimal{}) <|> denominator when is_integer(denominator) do124     │                                  ~125     │126     └─ lib/ratio.ex:194:34127128     warning: <|> is deprecated. Use another pipe-like operator129     │130 199 │     def numerator <|> (denominator = %Decimal{}) when is_integer(numerator) do131     │                   ~132     │133     └─ lib/ratio.ex:199:19134135     warning: <|> is deprecated. Use another pipe-like operator136     │137 204 │   def numerator <|> denominator do138     │                 ~139     │140     └─ lib/ratio.ex:204:17141142     warning: <|> is deprecated. Use another pipe-like operator143     │144 237 │       Ratio.DecimalConversion.decimal_to_rational(numerator) <|>145     │                                                              ~146     │147     └─ lib/ratio.ex:237:62148149     warning: <|> is deprecated. Use another pipe-like operator150     │151 242 │       numerator <|> Ratio.DecimalConversion.decimal_to_rational(denominator)152     │                 ~153     │154     └─ lib/ratio.ex:242:17155156     warning: <|> is deprecated. Use another pipe-like operator157     │158 247 │     numerator <|> denominator159     │               ~160     │161     └─ lib/ratio.ex:247:15162163     warning: <|> is deprecated. Use another pipe-like operator164     │165 261 │     do: Kernel.abs(numerator) <|> denominator166     │                               ~167     │168     └─ lib/ratio.ex:261:31169170     warning: <|> is deprecated. Use another pipe-like operator171     │172 310 │     do: Kernel.+(a * lcm, b) <|> lcm173     │                              ~174     │175     └─ lib/ratio.ex:310:30176177     warning: <|> is deprecated. Use another pipe-like operator178     │179 313 │     do: Kernel.+(b * lcm, a) <|> lcm180     │                              ~181     │182     └─ lib/ratio.ex:313:30183184     warning: <|> is deprecated. Use another pipe-like operator185     │186 316 │     Kernel.+(a, c) <|> lcm187     │                    ~188     │189     └─ lib/ratio.ex:316:20190191     warning: <|> is deprecated. Use another pipe-like operator192     │193 320 │     Kernel.+(a * d, c * b) <|> (b * d)194     │                            ~195     │196     └─ lib/ratio.ex:320:28197198     warning: <|> is deprecated. Use another pipe-like operator199     │200 423 │     Kernel.*(numerator, number) <|> denominator201     │                                 ~202     │203     └─ lib/ratio.ex:423:33204205     warning: <|> is deprecated. Use another pipe-like operator206     │207 428 │     Kernel.*(numerator, number) <|> denominator208     │                                 ~209     │210     └─ lib/ratio.ex:428:33211212     warning: <|> is deprecated. Use another pipe-like operator213     │214 435 │     Kernel.*(numerator1, numerator2) <|> Kernel.*(denominator1, denominator2)215     │                                      ~216     │217     └─ lib/ratio.ex:435:38218219     warning: <|> is deprecated. Use another pipe-like operator220     │221 467 │   def div(a, b) when is_number(a) and is_integer(b), do: a <|> b222     │                                                            ~223     │224     └─ lib/ratio.ex:467:60225226     warning: <|> is deprecated. Use another pipe-like operator227     │228 474 │     numerator <|> Kernel.*(denominator, number)229     │               ~230     │231     └─ lib/ratio.ex:474:15232233     warning: <|> is deprecated. Use another pipe-like operator234     │235 480 │     mult(number, denominator <|> numerator)236     │                              ~237     │238     └─ lib/ratio.ex:480:30239240     warning: <|> is deprecated. Use another pipe-like operator241     │242 487 │     Kernel.*(numerator1, denominator2) <|> Kernel.*(denominator1, numerator2)243     │                                        ~244     │245     └─ lib/ratio.ex:487:40246247     warning: <|> is deprecated. Use another pipe-like operator248     │249 507 │   def a / b when is_number(a) and is_integer(b), do: a <|> b250     │                                                        ~251     │252     └─ lib/ratio.ex:507:56253254     warning: <|> is deprecated. Use another pipe-like operator255     │256 852 │     if numerator <|> denominator == floor do257     │                  ~258     │259     └─ lib/ratio.ex:852:18260261     warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead262     │263 133 │   Passed floats are rounded to `#{Application.get_env(:ratio, :max_float_to_rational_digits)}` digits, to make the result match expectations better.264     │                                               ~265     │266     └─ lib/ratio.ex:133:47: Ratio (module)267268    warning: <|> is deprecated. Use another pipe-like operator269    │270 55 │     (integer * numerator + decimal) <|> numerator271    │                                     ~272    │273    └─ lib/ratio/float_conversion.ex:55:37274275    warning: Application.get_env/2 is discouraged in the module body, use Application.compile_env/3 instead276    │277  4 │   @max_decimals Application.get_env(:ratio, :max_float_to_rational_digits)278    │                             ~279    │280    └─ lib/ratio/float_conversion.ex:4:29: Ratio.FloatConversion (module)281282    warning: Ratio.DecimalConversion.decimal_to_rational/1 is undefined (module Ratio.DecimalConversion is not available or is yet to be defined)283    │284 17 │     {ratio, Ratio.DecimalConversion.decimal_to_rational(decimal)}285    │                                     ~286    │287    └─ lib/ratio/coerce.ex:17:37: Coerce.Implementations.Ratio.Decimal.coerce/2288289Generated ratio app290==> secure_random291Compiling 1 file (.ex)292    warning: use Bitwise is deprecated. import Bitwise instead293    │294  2 │   use Bitwise295    │   ~~~~~~~~~~~296    │297    └─ lib/secure_random.ex:2: SecureRandom (module)298299Generated secure_random app300==> membrane_core301Compiling 106 files (.ex)302    warning: unused require Record303    │304 35 │   require Record305    │   ~306    │307    └─ lib/membrane/caps/matcher.ex:35:3308309    warning: unused require Membrane.Core.Message310    │311 13 │   require Message312    │   ~313    │314    └─ lib/membrane/core/input_buffer.ex:13:3315316    warning: use Bunch.Typespec is deprecated. `use Bunch.Typespec` only brings to scope the deprecated @/1317    │318 15 │   use Bunch.Typespec319    │   ~~~~~~~~~~~~~~~~~~320    │321    └─ lib/membrane/pad.ex:15: Membrane.Pad (module)322323warning: Bunch.Typespec.@list_type is deprecated. Use Bunch.Typespec.enum_to_alternative/1 instead.324  (bunch 1.6.4) lib/bunch/typespec.ex:33: Bunch.Typespec."MACRO-@"/2325  (elixir 1.20.3) src/elixir_dispatch.erl:263: :elixir_dispatch.expand_macro_fun/7326  (elixir 1.20.3) src/elixir_dispatch.erl:122: :elixir_dispatch.dispatch_import/6327  (elixir 1.20.3) src/elixir_expand.erl:679: :elixir_expand.expand_block/5328  (elixir 1.20.3) src/elixir_expand.erl:53: :elixir_expand.expand/3329  (elixir 1.20.3) src/elixir_expand.erl:18: :elixir_expand.expand/3330331    warning: unused require Membrane.Pad332    │333 14 │   require Pad334    │   ~335    │336    └─ lib/membrane/core/element/state.ex:14:3337338    warning: unused require Membrane.Core.Child.PadModel339    │340 14 │   require PadModel341    │   ~342    │343    └─ lib/membrane/core/element/event_controller.ex:14:3344345    warning: unused require Membrane.Core.Message346    │347 13 │   require Message348    │   ~349    │350    └─ lib/membrane/core/element/event_controller.ex:13:3351352    warning: unused require Membrane.Core.Child.PadModel353    │354 19 │   require PadModel355    │   ~356    │357    └─ lib/membrane/core/element/demand_handler.ex:19:3358359    warning: unused require Membrane.Core.Message360    │361 18 │   require Message362    │   ~363    │364    └─ lib/membrane/core/element/demand_handler.ex:18:3365366    warning: unused require Membrane.Core.Message367    │368  8 │   require Message369    │   ~370    │371    └─ lib/membrane/core/bin/linking_buffer.ex:8:3372373    warning: unused require Membrane.Core.Child.PadModel374    │375 16 │   require PadModel376    │   ~377    │378    └─ lib/membrane/core/child/pad_controller.ex:16:3379380    warning: unused require Membrane.Core.Message381    │382 14 │   require Message383    │   ~384    │385    └─ lib/membrane/core/child/pad_controller.ex:14:3386387    warning: unused require Membrane.Core.Message388    │389 14 │   require Message390    │   ~391    │392    └─ lib/membrane/core/parent/child_life_controller/link_handler.ex:14:3393394    warning: unused require Membrane.Core.Message395    │396  6 │   require Membrane.Core.Message397    │   ~398    │399    └─ lib/membrane/core/parent/child_life_controller/startup_handler.ex:6:3400401    warning: unused require Membrane.Core.Child.PadModel402    │403 23 │   require PadModel404    │   ~405    │406    └─ lib/membrane/core/element/action_handler.ex:23:3407408    warning: unused require Membrane.Core.Message409    │410 22 │   require Message411    │   ~412    │413    └─ lib/membrane/core/element/action_handler.ex:22:3414415    warning: unused require Membrane.Pad416    │417  9 │   require Pad418    │   ~419    │420    └─ lib/membrane/core/child/pad_spec_handler.ex:9:3421422    warning: unused require Membrane.Core.Message423    │424 10 │   require Message425    │   ~426    │427    └─ lib/membrane/core/bin/action_handler.ex:10:3428429     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 operator430     │431 100 │     <<part1::binary-size(at_pos), part2::binary>> = payload432     │                          ~433     │434     └─ lib/membrane/payload.ex:100:26: Membrane.Payload.BitString.split_at/2435436     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 operator437     │438 113 │     <<_dropped::binary-size(bytes), rest::binary>> = payload439     │                             ~440     │441     └─ lib/membrane/payload.ex:113:29: Membrane.Payload.BitString.drop/2442443    warning: unused require Membrane.Core.Message444    │445 30 │   require Message446    │   ~447    │448    └─ lib/membrane/pipeline.ex:30:3449450    warning: unused require Membrane.Element451    │452 28 │   require Element453    │   ~454    │455    └─ lib/membrane/pipeline.ex:28:3456457    warning: unused require Membrane.Pad458    │459 31 │   require Pad460    │   ~461    │462    └─ lib/membrane/pipeline.ex:31:3463464    warning: unused require Membrane.PlaybackState465    │466 29 │   require PlaybackState467    │   ~468    │469    └─ lib/membrane/pipeline.ex:29:3470471    warning: unused require Membrane.Core.Child.PadModel472    │473 40 │   require PadModel474    │   ~475    │476    └─ lib/membrane/bin.ex:40:3477478    warning: unused require Membrane.Element479    │480 36 │   require Element481    │   ~482    │483    └─ lib/membrane/bin.ex:36:3484485    warning: unused require Membrane.Pad486    │487 38 │   require Pad488    │   ~489    │490    └─ lib/membrane/bin.ex:38:3491492    warning: unused require Membrane.PlaybackState493    │494 41 │   require Membrane.PlaybackState495    │   ~496    │497    └─ lib/membrane/bin.ex:41:3498499    warning: unused require Membrane.Core.Message500    │501 15 │   require Message502    │   ~503    │504    └─ lib/membrane/core/playback_handler.ex:15:3505506    warning: unused require Membrane.Core.Child.PadModel507    │508 23 │   require PadModel509    │   ~510    │511    └─ lib/membrane/core/parent/lifecycle_controller.ex:23:3512513    warning: unused require Membrane.Core.Message514    │515 22 │   require Message516    │   ~517    │518    └─ lib/membrane/core/parent/lifecycle_controller.ex:22:3519520    warning: unused require Membrane.PlaybackState521    │522 24 │   require PlaybackState523    │   ~524    │525    └─ lib/membrane/core/parent/lifecycle_controller.ex:24:3526527    warning: unused require Membrane.Bin528    │529  6 │   require Membrane.Bin530    │   ~531    │532    └─ lib/membrane/core/parent/child_life_controller.ex:6:3533534    warning: unused require Membrane.Core.Message535    │536  7 │   require Membrane.Core.Message537    │   ~538    │539    └─ lib/membrane/core/parent/child_life_controller.ex:7:3540541    warning: unused require Membrane.Element542    │543  8 │   require Membrane.Element544    │   ~545    │546    └─ lib/membrane/core/parent/child_life_controller.ex:8:3547548    warning: unused require Membrane.PlaybackState549    │550  9 │   require Membrane.PlaybackState551    │   ~552    │553    └─ lib/membrane/core/parent/child_life_controller.ex:9:3554555    warning: unused require Membrane.Core.Child.PadModel556    │557 10 │   require Membrane.Core.Child.PadModel558    │   ~559    │560    └─ lib/membrane/core/element/lifecycle_controller.ex:10:3561562    warning: unused require Membrane.Core.Message563    │564 11 │   require Membrane.Core.Message565    │   ~566    │567    └─ lib/membrane/core/element/lifecycle_controller.ex:11:3568569    warning: unused require Membrane.Core.Playback570    │571 12 │   require Membrane.Core.Playback572    │   ~573    │574    └─ lib/membrane/core/element/lifecycle_controller.ex:12:357557657701:15:05.847 [warning] Passing :require_if option to Bunch.Config.parse/2 is deprecated, pass function returning constraints instead57857901:15:06.115 [warning] Passing :require_if option to Bunch.Config.parse/2 is deprecated, pass function returning constraints instead580    warning: expected a map or struct when accessing .membrane_element_type in expression:581582        &1.module.membrane_element_type583584    but got type:585586        dynamic(atom())587588    hint: "var.field" (without parentheses) means "var" is a map() while "var.fun()" (with parentheses) means "var" is an atom()589590    type warning found at:591    │592 37 │         &(Membrane.Element.element?(&1.module) and &1.module.membrane_element_type == :sink)593    │                                                              ~594    │595    └─ lib/membrane/core/parent/child_life_controller/startup_handler.ex:37:62: Membrane.Core.Parent.ChildLifeController.StartupHandler.setup_syncs/2596597    warning: a struct for Membrane.Core.Parent.Link is expected on struct update:598599        %Membrane.Core.Parent.Link{600          &1601          | from: resolve_endpoint(&1.from, state),602            to: resolve_endpoint(&1.to, state)603        }604605    but got type:606607        dynamic()608609    instead of using &1, you must define an anonymous function, define a variable and pattern match on "%Membrane.Core.Parent.Link{}"610611    type warning found at:612    │613 22 │       &%Link{&1 | from: resolve_endpoint(&1.from, state), to: resolve_endpoint(&1.to, state)}614    │        ~615    │616    └─ lib/membrane/core/parent/child_life_controller/link_handler.ex:22:8: Membrane.Core.Parent.ChildLifeController.LinkHandler.resolve_links/2617618    warning: the following clause will never match:619620        {:error, reason} ->621622    it is expected to match on type:623624        none()625626    type warning found at:627    │628 56 │       {:error, reason} -> raise LinkError, "#{inspect(reason)}"629    │       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~630    │631    └─ lib/membrane/core/child/pad_controller.ex:56: Membrane.Core.Child.PadController.handle_link/7632633    warning: the following clause will never match:634635        {{:error, reason}, state} ->636637    it is expected to match on type:638639        none()640641    type warning found at:642    │643 56 │       do: {{:error, reason}, state} ->644    │       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~645    │646    └─ lib/membrane/core/element/event_controller.ex:56: Membrane.Core.Element.EventController.exec_handle_event/4647648     warning: a struct for Membrane.Core.InputBuffer is expected on struct update:649650         %Membrane.Core.InputBuffer{buf | toilet?: true}651652     but got type:653654         dynamic()655656     where "buf" was given the type:657658         # type: dynamic()659         # from: lib/membrane/core/input_buffer.ex:112:21660         buf661662     when defining the variable "buf", you must also pattern match on "%Membrane.Core.InputBuffer{}"663664     type warning found at:665     │666 112 │   def enable_toilet(buf), do: %__MODULE__{buf | toilet?: true}667     │                               ~668     │669     └─ lib/membrane/core/input_buffer.ex:112:31: Membrane.Core.InputBuffer.enable_toilet/1670671    warning: expected a map or struct when accessing .input_buf_preferred_size in expression:672673        metric.input_buf_preferred_size674675    where "metric" was given the type:676677        # type: dynamic(Membrane.Buffer.Metric.ByteSize or Membrane.Buffer.Metric.Count)678        # from: lib/membrane/core/input_buffer.ex:91:12679        metric = Membrane.Buffer.Metric.from_unit(demand_unit)680681    hint: "var.field" (without parentheses) means "var" is a map() while "var.fun()" (with parentheses) means "var" is an atom()682683    type warning found at:684    │685 92 │     preferred_size = props[:preferred_size] || metric.input_buf_preferred_size686    │                                                       ~687    │688    └─ lib/membrane/core/input_buffer.ex:92:55: Membrane.Core.InputBuffer.init/5689690    warning: a struct for Membrane.Core.Timer is expected on struct update:691692        %Membrane.Core.Timer{timer | ratio: ratio}693694    but got type:695696        dynamic()697698    where "timer" was given the type:699700        # type: dynamic()701        # from: lib/membrane/core/timer.ex:36:20702        timer703704    when defining the variable "timer", you must also pattern match on "%Membrane.Core.Timer{}"705706    type warning found at:707    │708 37 │     %__MODULE__{timer | ratio: ratio}709    │     ~710    │711    └─ lib/membrane/core/timer.ex:37:5: Membrane.Core.Timer.update_ratio/2712713    warning: a struct for Membrane.Core.Timer is expected on struct update:714715        %Membrane.Core.Timer{timer | interval: interval}716717    but got type:718719        dynamic(not %Membrane.Core.Timer{interval: :no_interval})720721    where "timer" was given the type:722723        # type: dynamic(not %Membrane.Core.Timer{interval: :no_interval})724        # from: lib/membrane/core/timer.ex:67:20725        timer726727    when defining the variable "timer", you must also pattern match on "%Membrane.Core.Timer{}"728729    type warning found at:730    │731 68 │     %__MODULE__{timer | interval: interval}732    │     ~733    │734    └─ lib/membrane/core/timer.ex:68:5: Membrane.Core.Timer.set_interval/2735736Generated membrane_core app737==> bundlex738Compiling 29 files (.ex)739    warning: using single-quoted strings to represent charlists is deprecated.740    Use ~c"" if you indeed want a charlist or use "" instead.741    You may run "mix format --migrate" to change all single-quoted742    strings to use the ~c sigil and fix this warning.743    │744 38 │         {port, {:data, {:eol, 'ready'}}},745    │                               ~746    │747    └─ lib/bundlex/cnode/server.ex:38:31748749    warning: using single-quoted strings to represent charlists is deprecated.750    Use ~c"" if you indeed want a charlist or use "" instead.751    You may run "mix format --migrate" to change all single-quoted752    strings to use the ~c sigil and fix this warning.753    │754 48 │         :ok = :win32reg.change_key(reg, '\\hklm\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion')755    │                                         ~756    │757    └─ lib/bundlex/platform.ex:48:41758759    warning: using single-quoted strings to represent charlists is deprecated.760    Use ~c"" if you indeed want a charlist or use "" instead.761    You may run "mix format --migrate" to change all single-quoted762    strings to use the ~c sigil and fix this warning.763    │764 49 │         {:ok, build} = :win32reg.value(reg, 'BuildLabEx')765    │                                             ~766    │767    └─ lib/bundlex/platform.ex:49:45768769    warning: expected a map or struct when accessing .toolchain_module in expression:770771        Bundlex.Platform.get_module(platform).toolchain_module772773    but got type:774775        dynamic(776          Bundlex.Platform.Linux or Bundlex.Platform.MacOSX or Bundlex.Platform.Windows32 or777            Bundlex.Platform.Windows64778        )779780    where "platform" was given the type:781782        # type: dynamic(:linux or :macosx or :windows32 or :windows64)783        # from: lib/tasks/compile.bundlex.ex:34:37784        Bundlex.Platform.get_module(platform)785786    hint: "var.field" (without parentheses) means "var" is a map() while "var.fun()" (with parentheses) means "var" is an atom()787788    type warning found at:789    │790 34 │     commands = commands ++ Platform.get_module(platform).toolchain_module.before_all!(platform)791    │                                                          ~792    │793    └─ lib/tasks/compile.bundlex.ex:34:58: Mix.Tasks.Compile.Bundlex.run/1794795     warning: a struct for Bundlex.Native is expected on struct update:796797         %Bundlex.Native{native | deps: parsed_deps, preprocessors: preprocessors}798799     but got type:800801         dynamic(%{..., sources: term()})802803     where "native" was given the type:804805         # type: dynamic(%{..., sources: term()})806         # from: lib/bundlex/native.ex:126:51807         Enum.empty?(native.sources)808809     when defining the variable "native", you must also pattern match on "%Bundlex.Native{}"810811     type warning found at:812     │813 129 │         %__MODULE__{native | deps: parsed_deps, preprocessors: preprocessors}814     │         ~815     │816     └─ lib/bundlex/native.ex:129:9: Bundlex.Native.parse_native/2817818     warning: expected a map or struct when accessing .toolchain_module in expression:819820         Bundlex.Platform.get_module(platform).toolchain_module821822     but got type:823824         dynamic(825           Bundlex.Platform.Linux or Bundlex.Platform.MacOSX or Bundlex.Platform.Windows32 or826             Bundlex.Platform.Windows64827         )828829     where "platform" was given the type:830831         # type: dynamic(:linux or :macosx or :windows32 or :windows64)832         # from: lib/bundlex/native.ex:106:27833         Bundlex.Platform.get_module(platform)834835     hint: "var.field" (without parentheses) means "var" is a map() while "var.fun()" (with parentheses) means "var" is an atom()836837     type warning found at:838     │839 106 │       commands = Platform.get_module(platform).toolchain_module.compiler_commands(native)840     │                                                ~841     │842     └─ lib/bundlex/native.ex:106:48: Bundlex.Native.resolve_native/4843844Generated bundlex app845warning: using map.field notation (without parentheses) to invoke function Bundlex.Platform.Linux.toolchain_module() is deprecated, you must add parentheses instead: remote.function()846  (bundlex 0.4.1) lib/tasks/compile.bundlex.ex:34: Mix.Tasks.Compile.Bundlex.run/1847  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5848  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2849  (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4850  (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2851852==> bunch_native853Bundlex: Building natives: lib, bunch854warning: using map.field notation (without parentheses) to invoke function Bundlex.Platform.Linux.toolchain_module() is deprecated, you must add parentheses instead: remote.function()855  (bundlex 0.4.1) lib/bundlex/native.ex:106: Bundlex.Native.resolve_native/4856  (bunch 1.6.4) lib/bunch/enum.ex:244: Bunch.Enum.do_try_flat_map/3857  (bundlex 0.4.1) lib/tasks/compile.bundlex.ex:38: Mix.Tasks.Compile.Bundlex.run/1858  (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5859  (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2860861Generated bunch_native app862==> shmex863Bundlex: Building natives: lib, shmex864Compiling 2 files (.ex)865     warning: the following pattern will never match:866867         {:ok, trimmed_front} <- trim_leading(shm, bytes)868869     because the right-hand side has type:870871         none()872873     where "bytes" was given the type:874875         # type: dynamic()876         # from: lib/shmex_native.ex:119:17877         bytes878879     where "shm" was given the type:880881         # type: dynamic()882         # from: lib/shmex_native.ex:119:12883         shm884885     type warning found at:886     │887 120 │     with {:ok, trimmed_front} <- trim_leading(shm, bytes),888     │     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~889     │890     └─ lib/shmex_native.ex:120: Shmex.Native.trim/2891892Generated shmex app893==> unifex894Bundlex: Building natives: unifex895Compiling 27 files (.ex)896    warning: unused require Bundlex.CNode897    │898  6 │   require Bundlex.CNode899    │   ~900    │901    └─ lib/unifex/cnode.ex:6:3902903Generated unifex app904==> membrane_common_c905/usr/bin/sh: 1: clang-format: not found906Bundlex: Building natives: membrane, membrane_ringbuffer907/work/proj/deps/membrane_common_c/c_src/membrane/log.c: In function ‘membrane_log’:908/work/proj/deps/membrane_common_c/c_src/membrane/log.c:54:31: warning: passing argument 7 of ‘send_membrane_log’ from incompatible pointer type [-Wincompatible-pointer-types]909   54 |                               tags, 2);910      |                               ^~~~911      |                               |912      |                               char **913In file included from /work/proj/deps/membrane_common_c/c_src/membrane/_generated/membrane.h:4,914                 from /work/proj/deps/membrane_common_c/c_src/membrane/log.h:6,915                 from /work/proj/deps/membrane_common_c/c_src/membrane/log.c:5:916/work/proj/deps/membrane_common_c/c_src/membrane/_generated/nif/membrane.h:48:138: note: expected ‘const char **’ but argument is of type ‘char **’917   48 | int send_membrane_log(UnifexEnv* env, UnifexPid pid, int flags, const  char* level, const char* message, const char* time, const  char** tags, unsigned int tags_length);918      |                                                                                                                            ~~~~~~~~~~~~~~^~~~919Compiling 1 file (.ex)920Generated membrane_common_c app921==> membrane_element_ffmpeg_h264922/usr/bin/sh: 1: clang-format: not found923/usr/bin/sh: 1: clang-format: not found924/usr/bin/sh: 1: clang-format: not found925Bundlex: Building natives: parser, decoder, encoder926Package libavcodec was not found in the pkg-config search path.927Perhaps you should add the directory containing `libavcodec.pc'928to the PKG_CONFIG_PATH environment variable929Package 'libavcodec', required by 'virtual:world', not found930Package 'libavutil', required by 'virtual:world', not found931could not compile dependency :membrane_element_ffmpeg_h264, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile membrane_element_ffmpeg_h264 --force", update it with "mix deps.update membrane_element_ffmpeg_h264" or clean it with "mix deps.clean membrane_element_ffmpeg_h264"932** (MatchError) no match of right hand side value:933934    {"", 1}935936    (bundlex 0.4.1) lib/bundlex/toolchain/common/unix.ex:104: Bundlex.Toolchain.Common.Unix.pkg_config/2937    (bundlex 0.4.1) lib/bundlex/toolchain/common/unix.ex:10: Bundlex.Toolchain.Common.Unix.compiler_commands/5938    (bundlex 0.4.1) lib/bundlex/native.ex:106: Bundlex.Native.resolve_native/4939    (bunch 1.6.4) lib/bunch/enum.ex:244: Bunch.Enum.do_try_flat_map/3940    (bundlex 0.4.1) lib/tasks/compile.bundlex.ex:38: Mix.Tasks.Compile.Bundlex.run/1941    (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5942    (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2943    (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4