Build log
nerves_system_x86_64
kino_live_view_native 0.2.2 · fail · run kino_live_view_native-0.2.2-1790967424002
1051 of 1051 lines
1Resolving Hex dependencies...2Resolution completed in 0.49s3Unchanged:4 castore 1.0.215 circular_buffer 1.1.06 cowboy 2.19.07 cowboy_telemetry 0.4.08 cowlib 2.20.0 VULNERABLE!9 EEF-CVE-2026-43966 (MEDIUM)10 aka: CVE-2026-43966, GHSA-w4f7-4cxr-rv3c11 HTTP Response Splitting via Non-VCHAR Bytes in cow_http_struct_hd:escape_string/212 https://osv.dev/vulnerability/EEF-CVE-2026-439661314 EEF-CVE-2026-43969 (LOW)15 aka: CVE-2026-43969, GHSA-g2wm-735q-3f5616 Cookie Request Header Injection via Unvalidated Encoder in cow_cookie:cookie/117 https://osv.dev/vulnerability/EEF-CVE-2026-4396918 decimal 3.1.119 deep_merge 1.0.220 dns_cluster 0.1.321 ecto 3.14.222 elixir_make 0.10.023 esbuild 0.10.024 expo 1.1.125 file_system 1.1.126 finch 0.24.027 floki 0.38.428 fss 0.1.129 gettext 0.26.230 hpax 1.1.031 interactive_cmd 0.1.432 jason 1.4.533 kino 0.12.334 kino_live_view_native 0.2.235 live_view_native 0.2.036 live_view_native_platform 0.2.037 live_view_native_stylesheet 0.2.038 live_view_native_swiftui 0.2.139 makeup 1.2.240 makeup_json 0.1.141 makeup_swift 0.0.242 mime 2.0.743 mint 1.11.044 nerves 2.0.0-pre.245 nerves_discovery 0.1.546 nerves_logging 0.2.447 nerves_runtime 0.13.1348 nerves_system_bbb 2.30.249 nerves_system_br 1.34.450 nerves_system_mangopi_mq_pro 0.17.251 nerves_system_qemu_aarch64 0.4.252 nerves_system_rpi0 2.1.253 nerves_system_rpi4 2.1.254 nerves_system_rpi5 2.1.255 nerves_system_trellis 0.5.056 nerves_system_x86_64 1.34.257 nerves_toolchain_aarch64_nerves_linux_gnu 15.3.158 nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.159 nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.160 nerves_toolchain_riscv64_nerves_linux_gnu 15.3.161 nerves_toolchain_x86_64_nerves_linux_musl 15.3.162 nerves_uevent 0.1.763 nimble_options 1.1.164 nimble_parsec 1.4.265 nimble_pool 1.1.066 owl 0.13.167 phoenix 1.7.2468 phoenix_html 3.3.469 phoenix_live_dashboard 0.8.770 phoenix_live_reload 1.7.071 phoenix_live_view 0.20.2 VULNERABLE!72 EEF-CVE-2026-64941 (LOW)73 aka: CVE-2026-64941, GHSA-36m4-rm57-3prf74 Open redirect in Phoenix.LiveView.validate_local_url!/2 via ASCII tab, LF and CR75 https://osv.dev/vulnerability/EEF-CVE-2026-6494176 phoenix_pubsub 2.3.077 phoenix_template 1.1.078 phoenix_view 2.0.479 plug 1.20.380 plug_cowboy 2.9.081 plug_crypto 2.2.082 property_table 0.3.483 ranch 2.3.084 ring_logger 0.11.785 table 0.1.286 tablet 0.3.387 tailwind 0.2.488 telemetry 1.4.289 telemetry_metrics 0.6.290 telemetry_poller 1.3.091 toolshed 0.5.092 uboot_env 1.0.293 websock 0.5.394 websock_adapter 0.5.995* Getting kino_live_view_native (Hex package)96* Getting nerves (Hex package)97* Getting ring_logger (Hex package)98* Getting toolshed (Hex package)99* Getting nerves_runtime (Hex package)100* Getting nerves_system_bbb (Hex package)101* Getting nerves_system_mangopi_mq_pro (Hex package)102* Getting nerves_system_qemu_aarch64 (Hex package)103* Getting nerves_system_rpi0 (Hex package)104* Getting nerves_system_rpi4 (Hex package)105* Getting nerves_system_rpi5 (Hex package)106* Getting nerves_system_trellis (Hex package)107* Getting nerves_system_x86_64 (Hex package)108* Getting nerves_system_br (Hex package)109* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)110* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)111* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)112* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)113* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)114* Getting nerves_logging (Hex package)115* Getting nerves_uevent (Hex package)116* Getting uboot_env (Hex package)117* Getting elixir_make (Hex package)118* Getting property_table (Hex package)119* Getting circular_buffer (Hex package)120* Getting interactive_cmd (Hex package)121* Getting nerves_discovery (Hex package)122* Getting tablet (Hex package)123* Getting dns_cluster (Hex package)124* Getting esbuild (Hex package)125* Getting finch (Hex package)126* Getting floki (Hex package)127* Getting gettext (Hex package)128* Getting jason (Hex package)129* Getting kino (Hex package)130* Getting live_view_native (Hex package)131* Getting live_view_native_swiftui (Hex package)132* Getting phoenix (Hex package)133* Getting phoenix_html (Hex package)134* Getting phoenix_live_dashboard (Hex package)135* Getting phoenix_live_reload (Hex package)136* Getting phoenix_live_view (Hex package)137* Getting plug_cowboy (Hex package)138* Getting tailwind (Hex package)139* Getting telemetry_metrics (Hex package)140* Getting telemetry_poller (Hex package)141* Getting telemetry (Hex package)142* Getting castore (Hex package)143* Getting cowboy (Hex package)144* Getting cowboy_telemetry (Hex package)145* Getting plug (Hex package)146* Getting mime (Hex package)147* Getting plug_crypto (Hex package)148* Getting cowlib (Hex package)149* Getting ranch (Hex package)150* Getting phoenix_template (Hex package)151* Getting file_system (Hex package)152* Getting phoenix_pubsub (Hex package)153* Getting websock_adapter (Hex package)154* Getting websock (Hex package)155* Getting live_view_native_platform (Hex package)156* Getting live_view_native_stylesheet (Hex package)157* Getting makeup_json (Hex package)158* Getting makeup_swift (Hex package)159* Getting nimble_parsec (Hex package)160* Getting makeup (Hex package)161* Getting ecto (Hex package)162* Getting decimal (Hex package)163* Getting deep_merge (Hex package)164* Getting owl (Hex package)165* Getting phoenix_view (Hex package)166* Getting fss (Hex package)167* Getting table (Hex package)168* Getting expo (Hex package)169* Getting mint (Hex package)170* Getting nimble_options (Hex package)171* Getting nimble_pool (Hex package)172* Getting hpax (Hex package)173Found packages with security advisories, see above for details174You have added/upgraded packages you could sponsor, run `mix hex.sponsor` to learn more175==> file_system176Compiling 7 files (.ex)177Generated file_system app178==> floki179Compiling 1 file (.xrl)180Compiling 2 files (.erl)181Compiling 30 files (.ex)182Generated floki app183==> owl184Compiling 19 files (.ex)185Generated owl app186==> nerves_compatibility_test187===> Analyzing applications...188===> Compiling cowlib189==> esbuild190Compiling 4 files (.ex)191Generated esbuild app192==> makeup193Compiling 15 files (.ex)194Generated makeup app195==> makeup_swift196Compiling 3 files (.ex)197 warning: this clause cannot match because a previous clause at line 233 matches the same pattern as this clause198 │199 233 │ defparsec(200 │ ~~~~~~~~~~201 │202 └─ lib/makeup/lexers/swift_lexer.ex:233203204 warning: this clause cannot match because a previous clause at line 233 matches the same pattern as this clause205 │206 233 │ defparsec(207 │ ~~~~~~~~~~208 │209 └─ lib/makeup/lexers/swift_lexer.ex:233210211 warning: this clause cannot match because a previous clause at line 233 matches the same pattern as this clause212 │213 233 │ defparsec(214 │ ~~~~~~~~~~215 │216 └─ lib/makeup/lexers/swift_lexer.ex:233217218Generated makeup_swift app219==> telemetry_metrics220Compiling 7 files (.ex)221 warning: unused require Logger222 │223 391 │ require Logger224 │ ~225 │226 └─ lib/telemetry_metrics.ex:391:3227228Generated telemetry_metrics app229==> nerves_compatibility_test230===> Analyzing applications...231===> Compiling telemetry_poller232===> Analyzing applications...233===> Compiling cowboy234==> live_view_native_stylesheet235Compiling 14 files (.ex)236Generated live_view_native_stylesheet app237==> dns_cluster238Compiling 1 file (.ex)239 warning: comparison between distinct types found:240241 net_state.started != :no242243 given types:244245 dynamic(not :no) != :no246247 where "net_state" was given the types:248249 # type: dynamic()250 # from: lib/dns_cluster.ex:166:8251 net_state252253 # type: dynamic(not false and not nil)254 # from: lib/dns_cluster.ex:166:8255 net_state256257 # type: dynamic(%{..., started: term()})258 # from: lib/dns_cluster.ex:169:25259 net_state.started == :no260261 # type: dynamic(%{..., started: not :no})262 # from: lib/dns_cluster.ex:179:25263 net_state.started == :no264265 While Elixir can compare across all types, you are comparing across types which are always disjoint, and the result is either always true or always false266267 type warning found at:268 │269 180 │ (!release? and net_state.started != :no and net_state[:name_domain] != :longnames) ->270 │ ~271 │272 └─ lib/dns_cluster.ex:180:44: DNSCluster.warn_on_invalid_dist/0273274Generated dns_cluster app275==> makeup_json276Compiling 3 files (.ex)277Generated makeup_json app278==> live_view_native_platform279Compiling 11 files (.ex)280 warning: "else" clauses will never match because all patterns in "with" will always match281 │282 38 │ with spec <- Application.spec(otp_app),283 │ ~284 │285 └─ lib/live_view_native_platform/env.ex:38:5286287 warning: the following clause will never match:288289 error ->290291 it is expected to match on type:292293 none()294295 type warning found at:296 │297 64 │ error ->298 │ ~299 │300 └─ lib/live_view_native_platform/env.ex:64:7: LiveViewNativePlatform.Env.define/2301302Generated live_view_native_platform app303==> phoenix_view304Compiling 1 file (.ex)305 warning: the variable "prefix_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator306 │307 655 │ <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix308 │ ~309 │310 └─ lib/phoenix_view.ex:655:29: Phoenix.View.unsuffix/2311312Generated phoenix_view app313==> tailwind314Compiling 3 files (.ex)315Generated tailwind app316==> nerves_compatibility_test317===> Analyzing applications...318===> Compiling cowboy_telemetry319==> plug_cowboy320Compiling 5 files (.ex)321Generated plug_cowboy app322==> websock_adapter323Compiling 4 files (.ex)324Generated websock_adapter app325warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"326 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2327 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1328 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5329 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2330 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4331 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2332333==> phoenix334Compiling 71 files (.ex)335 warning: unused require Logger336 │337 9 │ require Logger338 │ ~339 │340 └─ lib/phoenix/config.ex:9:3341342 warning: unused require Logger343 │344 281 │ require Logger345 │ ~346 │347 └─ lib/phoenix/endpoint.ex:281:3348349 warning: unused require Phoenix.Endpoint350 │351 6 │ require Phoenix.Endpoint352 │ ~353 │354 └─ lib/phoenix/controller.ex:6:3355356 warning: the variable "prefix_size" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator357 │358 46 │ <<prefix::binary-size(prefix_size), ^suffix::binary>> -> prefix359 │ ~360 │361 └─ lib/phoenix/naming.ex:46:29: Phoenix.Naming.unsuffix/2362363 warning: unused require Phoenix.Endpoint364 │365 17 │ require Phoenix.Endpoint366 │ ~367 │368 └─ lib/phoenix/endpoint/render_errors.ex:17:3369370 warning: unused require Phoenix.Endpoint371 │372 6 │ require Phoenix.Endpoint373 │ ~374 │375 └─ lib/phoenix/channel/server.ex:6:3376377 warning: unused require Phoenix.Endpoint378 │379 202 │ require Phoenix.Endpoint380 │ ~381 │382 └─ lib/phoenix/socket.ex:202:3383384 warning: unused require Logger385 │386 70 │ require Logger387 │ ~388 │389 └─ lib/phoenix/socket/pool_supervisor.ex:70:3390391 warning: unused require Logger392 │393 100 │ require Logger394 │ ~395 │396 └─ lib/phoenix/token.ex:100:3397398 warning: comparison between distinct types found:399400 merge_all != []401402 given types:403404 dynamic(non_empty_list({atom(), term()})) != empty_list()405406 where "merge_all" was given the type:407408 # type: dynamic(non_empty_list({atom(), term()}))409 # from: lib/phoenix/router/route.ex:121:15410 merge_all = merge_params ++ merge_private ++ merge_assigns411412 While Elixir can compare across all types, you are comparing across types which are always disjoint, and the result is either always true or always false413414 type warning found at:415 │416 123 │ if merge_all != [] do417 │ ~418 │419 └─ lib/phoenix/router/route.ex:123:18: Phoenix.Router.Route.build_prepare/1420421 warning: a struct for Plug.Conn is expected on struct update:422423 %Plug.Conn{conn | state: :sent}424425 but got type:426427 dynamic()428429 where "conn" was given the type:430431 # type: dynamic()432 # from: lib/phoenix/endpoint/render_errors.ex:55:17433 conn434435 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"436437 type warning found at:438 │439 60 │ %Plug.Conn{conn | state: :sent}440 │ ~441 │442 └─ lib/phoenix/endpoint/render_errors.ex:60:11: Phoenix.Endpoint.RenderErrors.__catch__/5443444 warning: a struct for Plug.Conn is expected on struct update:445446 %Plug.Conn{conn | query_params: %{}, params: %{}}447448 but got type:449450 dynamic(%{..., params: %Plug.Conn.Unfetched{}})451452 where "conn" was given the types:453454 # type: dynamic(%{..., params: term()})455 # from: lib/phoenix/endpoint/render_errors.ex:133:17456 conn.params457458 # type: dynamic(%{..., params: %Plug.Conn.Unfetched{}})459 # from: lib/phoenix/endpoint/render_errors.ex:133:17460 conn.params461462 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"463464 type warning found at:465 │466 134 │ %Plug.Conn.Unfetched{} -> %Plug.Conn{conn | query_params: %{}, params: %{}}467 │ ~468 │469 └─ lib/phoenix/endpoint/render_errors.ex:134:35: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1470471 warning: a struct for Plug.Conn is expected on struct update:472473 %Plug.Conn{conn | query_params: %{}, params: params}474475 but got type:476477 dynamic(%{..., params: not %Plug.Conn.Unfetched{}})478479 where "conn" was given the types:480481 # type: dynamic(%{..., params: term()})482 # from: lib/phoenix/endpoint/render_errors.ex:133:17483 conn.params484485 # type: dynamic(%{..., params: not %Plug.Conn.Unfetched{}})486 # from: lib/phoenix/endpoint/render_errors.ex:133:17487 conn.params488489 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"490491 type warning found at:492 │493 135 │ params -> %Plug.Conn{conn | query_params: %{}, params: params}494 │ ~495 │496 └─ lib/phoenix/endpoint/render_errors.ex:135:19: Phoenix.Endpoint.RenderErrors.maybe_fetch_query_params/1497498 warning: a struct for Plug.Conn is expected on struct update:499500 %Plug.Conn{conn | params: params}501502 but got type:503504 dynamic(%{..., params: map()})505506 where "conn" was given the type:507508 # type: dynamic(%{..., params: map()})509 # from: lib/phoenix/controller.ex:1327:17510 Map.get(conn.params, required_key)511512 when defining the variable "conn", you must also pattern match on "%Plug.Conn{}"513514 type warning found at:515 │516 1334 │ %Plug.Conn{conn | params: params}517 │ ~518 │519 └─ lib/phoenix/controller.ex:1334:5: Phoenix.Controller.scrub_params/2520521Generated phoenix app522==> phoenix_live_reload523Compiling 5 files (.ex)524Generated phoenix_live_reload app525warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"526 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2527 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1528 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5529 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2530 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4531 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2532533==> phoenix_live_view534Compiling 39 files (.ex)535 warning: unused require Logger536 │537 48 │ require Logger538 │ ~539 │540 └─ lib/phoenix_live_view/socket.ex:48:3541542 warning: unused require Phoenix.ChannelTest543 │544 5 │ require Phoenix.ChannelTest545 │ ~546 │547 └─ lib/phoenix_live_view/test/upload_client.ex:5:3548549 warning: unused require Phoenix.ChannelTest550 │551 183 │ require Phoenix.ChannelTest552 │ ~553 │554 └─ lib/phoenix_live_view/test/live_view_test.ex:183:3555556 warning: unused require Phoenix.ConnTest557 │558 182 │ require Phoenix.ConnTest559 │ ~560 │561 └─ lib/phoenix_live_view/test/live_view_test.ex:182:3562563 warning: unused require Logger564 │565 6 │ require Logger566 │ ~567 │568 └─ lib/phoenix_live_view/upload_channel.ex:6:3569570 warning: the following clause will never match:571572 {:error, reason} ->573574 because it attempts to match on the result of:575576 IO.binwrite(state.file, data)577578 which has type:579580 dynamic(not {:error, term()})581582 type warning found at:583 │584 23 │ {:error, reason} -> {:error, reason, state}585 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~586 │587 └─ lib/phoenix_live_view/upload_tmp_file_writer.ex:23: Phoenix.LiveView.UploadTmpFileWriter.write_chunk/2588589 warning: a struct for Phoenix.LiveView.Socket is expected on struct update:590591 %Phoenix.LiveView.Socket{592 socket593 | assigns: Map.merge(temp_assigns, socket.assigns),594 private: Map.put(socket.private, :temporary_assigns, temp_assigns)595 }596597 but got type:598599 dynamic()600601 where "socket" was given the type:602603 # type: dynamic()604 # from: lib/phoenix_live_view/utils.ex:528:21605 socket606607 when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"608609 type warning found at:610 │611 535 │ %Socket{612 │ ~613 │614 └─ lib/phoenix_live_view/utils.ex:535:5: Phoenix.LiveView.Utils.do_mount_opt/3615616 warning: the following clause is redundant:617618 def update(assigns, _key, fun) when is_function(fun, 1) or is_function(fun, 2)619620 it has type:621622 dynamic(), dynamic(), dynamic((none() -> term()) or (none(), none() -> term()))623624 previous clauses have already matched on the following types:625626 %Phoenix.LiveView.Socket{}, term(), (none(), none() -> term())627 %Phoenix.LiveView.Socket{}, term(), (none() -> term())628 term(), term(), (none(), none() -> term())629 term(), term(), (none() -> term())630631 │632 1366 │ def update(assigns, _key, fun) when is_function(fun, 1) or is_function(fun, 2) do633 │ ~634 │635 └─ lib/phoenix_component.ex:1366:7: Phoenix.Component.update/3636637 warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:638639 %Phoenix.LiveView.UploadEntry{640 entry641 | preflighted?: entry.preflighted? || Enum.__in__(entry.ref, refs_awaiting)642 }643644 but got type:645646 dynamic()647648 where "entry" was given the type:649650 # type: dynamic()651 # from: lib/phoenix_live_view/upload_config.ex:363:17652 entry <- conf.entries653654 when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"655656 type warning found at:657 │658 364 │ %UploadEntry{entry | preflighted?: entry.preflighted? || entry.ref in refs_awaiting}659 │ ~660 │661 └─ lib/phoenix_live_view/upload_config.ex:364:9: Phoenix.LiveView.UploadConfig.mark_preflighted/1662663 warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:664665 %Phoenix.LiveView.UploadEntry{entry | valid?: true, uuid: generate_uuid()}666667 but got type:668669 dynamic()670671 where "entry" was given the type:672673 # type: dynamic()674 # from: lib/phoenix_live_view/upload_config.ex:579:30675 entry676677 when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"678679 type warning found at:680 │681 580 │ entry = %UploadEntry{entry | valid?: true, uuid: generate_uuid()}682 │ ~683 │684 └─ lib/phoenix_live_view/upload_config.ex:580:13: Phoenix.LiveView.UploadConfig.put_valid_entry/2685686 warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:687688 %Phoenix.LiveView.UploadEntry{entry | valid?: false}689690 but got type:691692 dynamic()693694 where "entry" was given the type:695696 # type: dynamic()697 # from: lib/phoenix_live_view/upload_config.ex:592:32698 entry699700 when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"701702 type warning found at:703 │704 593 │ entry = %UploadEntry{entry | valid?: false}705 │ ~706 │707 └─ lib/phoenix_live_view/upload_config.ex:593:13: Phoenix.LiveView.UploadConfig.put_invalid_entry/3708709 warning: Logger.disable/1 is deprecated. Use Logger.put_process_level(pid, :none) instead710 │711 73 │ Logger.disable(self())712 │ ~713 │714 └─ lib/phoenix_live_view/test/client_proxy.ex:73:12: Phoenix.LiveViewTest.ClientProxy.init/1715716 warning: a struct for Phoenix.LiveView.UploadEntry is expected on struct update:717718 %Phoenix.LiveView.UploadEntry{entry | cancelled?: true}719720 but got type:721722 dynamic()723724 where "entry" was given the type:725726 # type: dynamic()727 # from: lib/phoenix_live_view/upload_config.ex:676:42728 entry729730 when defining the variable "entry", you must also pattern match on "%Phoenix.LiveView.UploadEntry{}"731732 type warning found at:733 │734 676 │ update_entry(conf, entry.ref, fn entry -> %UploadEntry{entry | cancelled?: true} end)735 │ ~736 │737 └─ lib/phoenix_live_view/upload_config.ex:676:51: Phoenix.LiveView.UploadConfig.cancel_entry/2738739 warning: a struct for Phoenix.LiveViewTest.ClientProxy is expected on struct update:740741 %Phoenix.LiveViewTest.ClientProxy{view | rendered: rendered}742743 but got type:744745 dynamic(%{..., rendered: map()})746747 where "view" was given the type:748749 # type: dynamic(%{..., rendered: map()})750 # from: lib/phoenix_live_view/test/client_proxy.ex:739:24751 Phoenix.LiveViewTest.DOM.merge_diff(view.rendered, diff)752753 when defining the variable "view", you must also pattern match on "%Phoenix.LiveViewTest.ClientProxy{}"754755 type warning found at:756 │757 740 │ new_view = %ClientProxy{view | rendered: rendered}758 │ ~759 │760 └─ lib/phoenix_live_view/test/client_proxy.ex:740:20: Phoenix.LiveViewTest.ClientProxy.merge_rendered/3761762 warning: a struct for Phoenix.LiveView.Socket is expected on struct update:763764 %Phoenix.LiveView.Socket{765 socket766 | assigns: %Phoenix.LiveView.Socket.AssignsNotInSocket{__assigns__: assigns}767 }768769 but got type:770771 dynamic(%{..., assigns: term()})772773 where "socket" was given the type:774775 # type: dynamic(%{..., assigns: term()})776 # from: lib/phoenix_live_view/renderer.ex:121:43777 %{assigns: assigns} = socket778779 when defining the variable "socket", you must also pattern match on "%Phoenix.LiveView.Socket{}"780781 type warning found at:782 │783 122 │ socket = %Socket{socket | assigns: %Socket.AssignsNotInSocket{__assigns__: assigns}}784 │ ~785 │786 └─ lib/phoenix_live_view/renderer.ex:122:14: Phoenix.LiveView.Renderer.render_assigns/1787788 warning: the right-hand side of || (shown as ... below) will never be executed:789790 conn.private[:live_view_connect_info] || prune_conn(conn) || ...791792 because the left-hand side always evaluates to:793794 dynamic(not false and not nil)795796 where "conn" was given the types:797798 # type: dynamic(%Plug.Conn{assigns: %{..., live_module: term()}, status: integer()})799 # from: lib/phoenix_live_view/test/live_view_test.ex:324:72800 %Plug.Conn{status: 200, assigns: %{live_module: live_module}} = conn801802 # type: dynamic(%Plug.Conn{803 assigns: %{..., live_module: term()},804 private:805 %{..., __struct__: atom()} or nil or empty_list() or non_empty_list(term(), term()) or806 non_struct_map(),807 status: integer()808 })809 # from: lib/phoenix_live_view/test/live_view_test.ex:338:35810 conn.private[:live_view_connect_params]811812 type warning found at:813 │814 339 │ connect_info: conn.private[:live_view_connect_info] || prune_conn(conn) || %{},815 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~816 │817 └─ lib/phoenix_live_view/test/live_view_test.ex:339: Phoenix.LiveViewTest.connect_from_static_token/2818819 warning: the following pattern will never match:820821 template = Phoenix.LiveView.Utils.normalize_layout(template, "live_session :root_layout")822823 because the right-hand side has type:824825 none()826827 where "template" was given the types:828829 # type: binary()830 # from: lib/phoenix_live_view/router.ex:288:66831 is_binary(template)832833 # type: binary()834 # from: lib/phoenix_live_view/router.ex835 {:root_layout, {mod, template}}836837 type warning found at:838 │839 289 │ template = Phoenix.LiveView.Utils.normalize_layout(template, "live_session :root_layout")840 │ ~841 │842 └─ lib/phoenix_live_view/router.ex:289:18: Phoenix.LiveView.Router.validate_live_session_opts/3843844 warning: the following pattern will never match:845846 template = Phoenix.LiveView.Utils.normalize_layout(template, "live_session :layout")847848 because the right-hand side has type:849850 none()851852 where "template" was given the types:853854 # type: binary()855 # from: lib/phoenix_live_view/router.ex:305:61856 is_binary(template)857858 # type: binary()859 # from: lib/phoenix_live_view/router.ex860 {:layout, {mod, template}}861862 type warning found at:863 │864 306 │ template = Phoenix.LiveView.Utils.normalize_layout(template, "live_session :layout")865 │ ~866 │867 └─ lib/phoenix_live_view/router.ex:306:18: Phoenix.LiveView.Router.validate_live_session_opts/3868869 warning: the following clause is redundant:870871 def to_iodata(%_{} = struct)872873 it has type:874875 dynamic(%Phoenix.LiveView.Rendered{})876877 previous clauses have already matched on the following types:878879 %Phoenix.LiveView.Rendered{}880881 │882 153 │ def to_iodata(%_{} = struct) do883 │ ~884 │885 └─ lib/phoenix_live_view/engine.ex:153:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/1886887 warning: the 1st pattern in clause will never match:888889 nil890891 because it is expected to receive type:892893 dynamic(%Phoenix.LiveView.Rendered{})894895 hint: defimpl for Phoenix.LiveView.Rendered requires its callbacks to match exclusively on %Phoenix.LiveView.Rendered{}896897 type warning found at:898 │899 157 │ def to_iodata(nil) do900 │ ~~~~~~~~~~~~~~~~~~~~~901 │902 └─ lib/phoenix_live_view/engine.ex:157: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/1903904 warning: the following clause is redundant:905906 def to_iodata(other)907908 it has type:909910 dynamic(%Phoenix.LiveView.Rendered{})911912 previous clauses have already matched on the following types:913914 %Phoenix.LiveView.Rendered{}915916 │917 161 │ def to_iodata(other) do918 │ ~919 │920 └─ lib/phoenix_live_view/engine.ex:161:9: Phoenix.HTML.Safe.Phoenix.LiveView.Rendered.to_iodata/1921922 warning: this clause of defp class_names/1 is never used (or it will always fail/warn when invoked)923 │924 799 │ defp class_names(nil), do: []925 │ ~926 │927 └─ lib/phoenix_live_view/js.ex:799:8: Phoenix.LiveView.JS.class_names/1928929Generated phoenix_live_view app930==> live_view_native931Compiling 21 files (.ex)932 warning: the following clause will never match:933934 _ ->935936 it is expected to match on type:937938 none()939940 type warning found at:941 │942 31 │ _ ->943 │ ~944 │945 └─ lib/live_view_native/templates.ex:31:7: LiveViewNative.Templates.compile_class_tree/3946947Generated live_view_native app948warning: "xref: [exclude: ...]" in your mix.exs file is deprecated, instead use: "elixirc_options: [no_warn_undefined: ...]"949 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:243: Mix.Tasks.Compile.Elixir.xref_exclude_opts/2950 (mix 1.20.3) lib/mix/tasks/compile.elixir.ex:142: Mix.Tasks.Compile.Elixir.run/1951 (mix 1.20.3) lib/mix/task.ex:502: anonymous fn/3 in Mix.Task.run_task/5952 (mix 1.20.3) lib/mix/task.compiler.ex:299: Mix.Task.Compiler.run_compiler/2953 (mix 1.20.3) lib/mix/task.compiler.ex:287: Mix.Task.Compiler.run/4954 (mix 1.20.3) lib/mix/tasks/compile.all.ex:75: Mix.Tasks.Compile.All.do_run/2955956==> phoenix_live_dashboard957Compiling 36 files (.ex)958 warning: Postgrex.Interval.to_string/1 is undefined (module Postgrex.Interval is not available or is yet to be defined)959 │960 281 │ do: struct.to_string(value)961 │ ~962 │963 └─ lib/phoenix/live_dashboard/pages/ecto_stats_page.ex:281:16: Phoenix.LiveDashboard.EctoStatsPage.format/2964965Generated phoenix_live_dashboard app966==> live_view_native_swiftui967Compiling 14 files (.ex)968 warning: unused require Logger969 │970 12 │ require Logger971 │ ~972 │973 └─ lib/live_view_native/swiftui/platform.ex:12:5974975Compiling lib/live_view_native/swiftui/rules_parser/modifiers.ex (it's taking more than 10s)976 warning: the following clause will never match:977978 {:., annotations, [nil, part]} ->979980 because it attempts to match on the result of:981982 outer983984 which has type:985986 dynamic(atom())987988 type warning found at:989 │990 96 │ {:., annotations, [nil, part]} ->991 │ ~992 │993 └─ lib/live_view_native/swiftui/rules_parser/post_processors.ex:96:9: LiveViewNative.SwiftUI.RulesParser.PostProcessors.combine_chain_ast_parts/2994995Generated live_view_native_swiftui app996==> kino_live_view_native997Compiling 19 files (.ex)998 warning: unused require IEx.Helpers999 │1000 3 │ require IEx.Helpers1001 │ ~1002 │1003 └─ lib/server/smart_cells/live_view_native.ex:3:310041005warning: defining a Gettext backend by calling10061007 use Gettext, otp_app: ...10081009is deprecated. To define a backend, call:10101011 use Gettext.Backend, otp_app: :my_app10121013Then, instead of importing your backend, call this in your module:10141015 use Gettext, backend: MyApp.Gettext10161017 lib/server_web/gettext.ex:23: ServerWeb.Gettext (module)10181019 warning: variable "params" is unused (if the variable is not meant to be used, prefix it with an underscore)1020 │1021 4 │ def mount(params, session, socket) do1022 │ ~~~~~~1023 │1024 └─ lib/server_web/live/hello_live.ex:4:13: ServerWeb.HelloLive.mount/310251026 warning: variable "session" is unused (if the variable is not meant to be used, prefix it with an underscore)1027 │1028 4 │ def mount(params, session, socket) do1029 │ ~~~~~~~1030 │1031 └─ lib/server_web/live/hello_live.ex:4:21: ServerWeb.HelloLive.mount/310321033 warning: variable "assigns" is unused (if the variable is not meant to be used, prefix it with an underscore)1034 │1035 8 │ def render(assigns = %{format: :swiftui}) do1036 │ ~~~~~~~1037 │1038 └─ lib/server_web/live/hello_live.ex:8:14: ServerWeb.HelloLive.render/110391040 error: undefined function sigil_SWIFTUI/2 (expected ServerWeb.HelloLive to define such a function or for it to be imported, but none are available)1041 │1042 9 │ ~SWIFTUI"""1043 │ ^^^^^^^^^^^^^1044 │1045 └─ lib/server_web/live/hello_live.ex:9:5: ServerWeb.HelloLive.render/1104610471048== Compilation error in file lib/server_web/live/hello_live.ex ==1049** (CompileError) lib/server_web/live/hello_live.ex: cannot compile module ServerWeb.HelloLive (errors have been logged)10501051could not compile dependency :kino_live_view_native, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile kino_live_view_native --force", update it with "mix deps.update kino_live_view_native" or clean it with "mix deps.clean kino_live_view_native"