Build log
nerves_system_x86_64
phoenix_kit_ecommerce 0.5.18 · fail · run phoenix_kit_ecommerce-0.5.18-1791205705818
946 of 946 lines
1Resolving Hex dependencies...2Resolution completed in 1.517s3Unchanged:4 aws_regions 0.1.05 backblaze_regions 0.1.06 bandit 1.12.57 bcrypt_elixir 3.3.28 beamlab_countries 1.2.19 beamlab_ex_aws_sqs 5.0.210 certifi 2.17.011 circular_buffer 1.1.012 comeonin 5.5.113 db_connection 2.10.214 decimal 3.1.115 ecto 3.14.216 ecto_sql 3.14.017 elixir_make 0.10.018 eqrcode 0.2.119 etcher 0.18.020 ex_aws 2.7.021 ex_aws_ec2 2.0.122 ex_aws_s3 2.5.923 ex_aws_sns 2.3.524 ex_aws_sts 2.3.025 expo 1.1.126 finch 0.24.027 fresco 0.13.128 gen_smtp 1.3.029 gettext 1.0.230 h2 0.12.431 hackney 4.8.532 hammer 7.5.033 hpax 1.1.034 idna 7.1.035 interactive_cmd 0.1.436 jason 1.4.537 keyfob 0.1.138 leaf 0.8.039 locale_slug 0.2.040 mdex 0.14.241 mdex_native 0.2.1142 mime 2.0.743 mimerl 1.5.044 mint 1.11.045 nerves 2.0.0-pre.246 nerves_discovery 0.1.547 nerves_logging 0.2.448 nerves_runtime 0.13.1349 nerves_system_bbb 2.30.250 nerves_system_br 1.34.451 nerves_system_mangopi_mq_pro 0.17.252 nerves_system_qemu_aarch64 0.4.253 nerves_system_rpi0 2.1.254 nerves_system_rpi4 2.1.255 nerves_system_rpi5 2.1.256 nerves_system_trellis 0.5.057 nerves_system_x86_64 1.34.258 nerves_toolchain_aarch64_nerves_linux_gnu 15.3.159 nerves_toolchain_armv6_nerves_linux_gnueabihf 15.3.160 nerves_toolchain_armv7_nerves_linux_gnueabihf 15.3.161 nerves_toolchain_riscv64_nerves_linux_gnu 15.3.162 nerves_toolchain_x86_64_nerves_linux_musl 15.3.163 nerves_uevent 0.1.764 nimble_csv 1.3.065 nimble_options 1.1.166 nimble_parsec 1.4.267 nimble_pool 1.1.068 oauth2 2.1.169 oban 2.24.170 parse_trans 3.4.271 phoenix 1.8.1572 phoenix_ecto 4.7.073 phoenix_html 4.3.074 phoenix_kit 2.53.075 phoenix_kit_billing 0.19.176 phoenix_kit_ecommerce 0.5.1877 phoenix_kit_templates 0.2.278 phoenix_live_view 1.2.1279 phoenix_pubsub 2.3.080 phoenix_template 1.1.081 plug 1.20.382 plug_crypto 2.2.083 postgrex 0.22.484 property_table 0.3.485 quic 2.1.186 ranch 2.3.087 req 0.7.488 ring_logger 0.11.789 rustler_precompiled 0.10.090 saxy 1.6.191 ssl_verify_fun 1.1.792 stripity_stripe 3.3.293 sweet_xml 0.7.594 swoosh 1.28.195 tablet 0.3.396 telemetry 1.4.297 tesla 1.21.398 tessera 0.3.899 thousand_island 1.5.0100 tigris_regions 0.1.0101 toolshed 0.5.0102 tz 0.28.4103 uboot_env 1.0.2104 ueberauth 0.10.8105 ueberauth_facebook 0.10.0106 ueberauth_github 0.8.3107 ueberauth_google 0.12.1108 uri_query 0.2.0109 uuidv7 1.0.0110 websock 0.5.3111 websock_adapter 0.6.0112 websockex 0.5.1113 webtransport 0.4.8114 yamerl 0.10.0115 yaml_elixir 2.12.2116* Getting phoenix_kit_ecommerce (Hex package)117* Getting nerves (Hex package)118* Getting ring_logger (Hex package)119* Getting toolshed (Hex package)120* Getting nerves_runtime (Hex package)121* Getting nerves_system_bbb (Hex package)122* Getting nerves_system_mangopi_mq_pro (Hex package)123* Getting nerves_system_qemu_aarch64 (Hex package)124* Getting nerves_system_rpi0 (Hex package)125* Getting nerves_system_rpi4 (Hex package)126* Getting nerves_system_rpi5 (Hex package)127* Getting nerves_system_trellis (Hex package)128* Getting nerves_system_x86_64 (Hex package)129* Getting nerves_system_br (Hex package)130* Getting nerves_toolchain_x86_64_nerves_linux_musl (Hex package)131* Getting nerves_toolchain_armv7_nerves_linux_gnueabihf (Hex package)132* Getting nerves_toolchain_aarch64_nerves_linux_gnu (Hex package)133* Getting nerves_toolchain_armv6_nerves_linux_gnueabihf (Hex package)134* Getting nerves_toolchain_riscv64_nerves_linux_gnu (Hex package)135* Getting nerves_logging (Hex package)136* Getting nerves_uevent (Hex package)137* Getting uboot_env (Hex package)138* Getting elixir_make (Hex package)139* Getting property_table (Hex package)140* Getting circular_buffer (Hex package)141* Getting interactive_cmd (Hex package)142* Getting nerves_discovery (Hex package)143* Getting tablet (Hex package)144* Getting ecto_sql (Hex package)145* Getting gettext (Hex package)146* Getting jason (Hex package)147* Getting mdex (Hex package)148* Getting nimble_csv (Hex package)149* Getting oban (Hex package)150* Getting phoenix (Hex package)151* Getting phoenix_kit (Hex package)152* Getting phoenix_kit_billing (Hex package)153* Getting phoenix_live_view (Hex package)154* Getting req (Hex package)155* Getting uuidv7 (Hex package)156* Getting ecto (Hex package)157* Getting decimal (Hex package)158* Getting telemetry (Hex package)159* Getting finch (Hex package)160* Getting mime (Hex package)161* Getting mint (Hex package)162* Getting nimble_options (Hex package)163* Getting nimble_pool (Hex package)164* Getting hpax (Hex package)165* Getting phoenix_html (Hex package)166* Getting phoenix_template (Hex package)167* Getting plug (Hex package)168* Getting plug_crypto (Hex package)169* Getting stripity_stripe (Hex package)170* Getting hackney (Hex package)171* Getting uri_query (Hex package)172* Getting certifi (Hex package)173* Getting h2 (Hex package)174* Getting idna (Hex package)175* Getting mimerl (Hex package)176* Getting parse_trans (Hex package)177* Getting quic (Hex package)178* Getting ssl_verify_fun (Hex package)179* Getting webtransport (Hex package)180* Getting aws_regions (Hex package)181* Getting backblaze_regions (Hex package)182* Getting bandit (Hex package)183* Getting bcrypt_elixir (Hex package)184* Getting beamlab_countries (Hex package)185* Getting etcher (Hex package)186* Getting ex_aws (Hex package)187* Getting ex_aws_ec2 (Hex package)188* Getting ex_aws_s3 (Hex package)189* Getting ex_aws_sns (Hex package)190* Getting ex_aws_sqs (Hex package)191* Getting ex_aws_sts (Hex package)192* Getting fresco (Hex package)193* Getting gen_smtp (Hex package)194* Getting hammer (Hex package)195* Getting keyfob (Hex package)196* Getting leaf (Hex package)197* Getting locale_slug (Hex package)198* Getting oauth2 (Hex package)199* Getting phoenix_ecto (Hex package)200* Getting phoenix_kit_templates (Hex package)201* Getting postgrex (Hex package)202* Getting saxy (Hex package)203* Getting sweet_xml (Hex package)204* Getting swoosh (Hex package)205* Getting tessera (Hex package)206* Getting tigris_regions (Hex package)207* Getting tz (Hex package)208* Getting ueberauth (Hex package)209* Getting ueberauth_facebook (Hex package)210* Getting ueberauth_github (Hex package)211* Getting ueberauth_google (Hex package)212* Getting websockex (Hex package)213* Getting yaml_elixir (Hex package)214* Getting yamerl (Hex package)215* Getting db_connection (Hex package)216* Getting tesla (Hex package)217* Getting phoenix_pubsub (Hex package)218* Getting eqrcode (Hex package)219* Getting ranch (Hex package)220* Getting comeonin (Hex package)221* Getting thousand_island (Hex package)222* Getting websock (Hex package)223* Getting websock_adapter (Hex package)224* Getting mdex_native (Hex package)225* Getting nimble_parsec (Hex package)226* Getting rustler_precompiled (Hex package)227* Getting expo (Hex package)228You have added/upgraded packages you could sponsor, run `mix hex.sponsor` to learn more229==> phoenix_kit230Compiling 688 files (.ex)231 warning: unused require Logger232 │233 24 │ require Logger234 │ ~235 │236 └─ lib/mix/tasks/compile.phoenix_kit_css_sources.ex:24:3237238 warning: unused require Logger239 │240 72 │ require Logger241 │ ~242 │243 └─ lib/mix/tasks/compile.phoenix_kit_js_sources.ex:72:3244245 warning: the variable "i" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator246 │247 462 │ <<_::binary-size(i), byte1::8, _::binary>> = padded1248 │ ~249 │250 └─ lib/modules/storage/services/url_signer.ex:462:28: PhoenixKit.Modules.Storage.URLSigner.secure_compare/2251252 warning: the variable "i" is accessed inside size(...) of a bitstring but it was defined outside of the match. You must precede it with the pin operator253 │254 463 │ <<_::binary-size(i), byte2::8, _::binary>> = padded2255 │ ~256 │257 └─ lib/modules/storage/services/url_signer.ex:463:28: PhoenixKit.Modules.Storage.URLSigner.secure_compare/2258259 warning: unused require Logger260 │261 36 │ require Logger262 │ ~263 │264 └─ lib/phoenix_kit/aws/sesv2.ex:36:3265266 warning: unused require Logger267 │268 12 │ require Logger269 │ ~270 │271 └─ lib/phoenix_kit/install/css_integration.ex:12:3272273 warning: unused require Logger274 │275 46 │ require Logger276 │ ~277 │278 └─ lib/phoenix_kit/integrations/key_store.ex:46:3279280Compiling lib/modules/storage/workers/capture_date_backfill_job.ex (it's taking more than 10s)281Compiling lib/modules/storage/services/variant_generator.ex (it's taking more than 10s)282Compiling lib/modules/storage/services/reconciler.ex (it's taking more than 10s)283Compiling lib/modules/storage/services/image_editing.ex (it's taking more than 10s)284Compiling lib/modules/storage/services/file_server.ex (it's taking more than 10s)285Compiling lib/modules/storage/services/annotation_thumbnail.ex (it's taking more than 10s)286Compiling lib/modules/storage/schemas/file_details.ex (it's taking more than 10s)287Compiling lib/modules/storage/reorganizer/resource_source.ex (it's taking more than 10s)288Compiling lib/modules/storage/reorganizer/action.ex (it's taking more than 10s)289Compiling lib/modules/storage/reorganizer.ex (it's taking more than 10s)290Compiling lib/modules/storage/library_state.ex (it's taking more than 10s)291Compiling lib/modules/storage/bucket_credentials.ex (it's taking more than 10s)292Compiling lib/phoenix_kit/migrations/expected_schema.ex (it's taking more than 10s)293Compiling lib/phoenix_kit/mentions/users.ex (it's taking more than 10s)294Compiling lib/phoenix_kit/mailer.ex (it's taking more than 10s)295Compiling lib/phoenix_kit/jobs/sweep_worker.ex (it's taking more than 10s)296Compiling lib/phoenix_kit/jobs/state_machine.ex (it's taking more than 10s)297Compiling lib/phoenix_kit/jobs/run_worker.ex (it's taking more than 10s)298Compiling lib/phoenix_kit/jobs/oban_store.ex (it's taking more than 10s)299Compiling lib/phoenix_kit/jobs/history.ex (it's taking more than 10s)300Compiling lib/phoenix_kit/jobs/engine.ex (it's taking more than 10s)301Compiling lib/phoenix_kit/jobs.ex (it's taking more than 10s)302Compiling lib/phoenix_kit/integrations/key_rotation.ex (it's taking more than 10s)303Compiling lib/modules/storage/workers/process_file_job.ex (it's taking more than 10s)304Compiling lib/modules/storage/workers/checksum_backfill_job.ex (it's taking more than 10s)305Compiling lib/phoenix_kit/migrations/postgres/v135.ex (it's taking more than 10s)306 warning: unused require Logger307 │308 13 │ require Logger309 │ ~310 │311 └─ lib/modules/storage/reorganizer/action.ex:13:3312313 warning: unused require Logger314 │315 32 │ require Logger316 │ ~317 │318 └─ lib/modules/storage/workers/checksum_backfill_job.ex:32:3319320 warning: unused require Logger321 │322 10 │ require Logger323 │ ~324 │325 └─ lib/phoenix_kit/system/dependencies.ex:10:3326327Compiling lib/phoenix_kit_web/components/media_browser.ex (it's taking more than 10s)328 warning: unused require Logger329 │330 10 │ require Logger331 │ ~332 │333 └─ lib/modules/storage/web/settings.ex:10:3334335 warning: unused require Logger336 │337 44 │ require Logger338 │ ~339 │340 └─ lib/phoenix_kit_web/live/components/user_settings.ex:44:3341342 warning: unused require Logger343 │344 19 │ require Logger345 │ ~346 │347 └─ lib/phoenix_kit_web/live/settings/authorization.ex:19:3348349Compiling lib/phoenix_kit_web/router.ex (it's taking more than 10s)350 warning: the following clause is redundant:351352 other ->353354 previous clauses have already matched on the following types:355356 {:error, :rate_limit_exceeded}357 {:ok, nil}358 {:error, binary()}359360 where "other" was given the type:361362 # type: dynamic(363 ({:error, binary()} and not {:ok, %{..., status: true}}) or {:error, :rate_limit_exceeded} or364 {:ok, nil}365 )366 # from: lib/phoenix_kit_web/users/referral_gate.ex:102:7367 other368369 type warning found at:370 │371 102 │ other ->372 │ ~373 │374 └─ lib/phoenix_kit_web/users/referral_gate.ex:102:13: PhoenixKitWeb.Users.ReferralGate.handle_event/3375376 warning: this clause in cond will always match:377378 base_url = PhoenixKit.Config.get_string(:oauth_base_url)379380 since it has type:381382 binary()383384 where "base_url" was given the type:385386 # type: binary()387 # from: lib/phoenix_kit_web/plugs/ensure_oauth_scheme.ex:34:16388 base_url = PhoenixKit.Config.get_string(:oauth_base_url)389390 type warning found at:391 │392 34 │ base_url = PhoenixKit.Config.get_string(:oauth_base_url) ->393 │ ~394 │395 └─ lib/phoenix_kit_web/plugs/ensure_oauth_scheme.ex:34:64: PhoenixKitWeb.Plugs.EnsureOAuthScheme.call/2396397 warning: the following clause cannot match because the previous clauses already matched all possible values:398399 _ ->400401 it attempts to match on the result of:402403 providers404405 which has the already matched type:406407 dynamic(empty_list() or map() or non_empty_list(term(), term()))408409 type warning found at:410 │411 71 │ _ ->412 │ ~413 │414 └─ lib/phoenix_kit_web/plugs/ensure_oauth_config.ex:71:9: PhoenixKitWeb.Plugs.EnsureOAuthConfig.ensure_oauth_config/0415416 warning: comparison between distinct types found:417418 scope != nil419420 given types:421422 dynamic(not nil) != nil423424 where "scope" was given the type:425426 # type: dynamic(not nil)427 # from: lib/phoenix_kit_web/live/users/permissions_matrix.ex:79:29428 PhoenixKit.Users.Permissions.can_edit_role_permissions?(scope, role)429430 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 false431432 type warning found at:433 │434 80 │ true <- scope != nil && Scope.has_module_access?(scope, "users") do435 │ ~436 │437 └─ lib/phoenix_kit_web/live/users/permissions_matrix.ex:80:24: PhoenixKitWeb.Live.Users.PermissionsMatrix.handle_event/3438439 warning: the following conditional expression will always succeed:440441 assigns.ml_enabled442443 because it evaluates to:444445 dynamic(not false and not nil)446447 where "assigns" was given the types:448449 # type: dynamic(450 %{..., __changed__: term(), ml_enabled: not false and not nil} or451 %{..., ml_enabled: not false and not nil}452 )453 # from: lib/phoenix_kit_web/live/modules/languages.html.heex:1454 assigns455456 # type: dynamic(%{..., ml_enabled: term()})457 # from: lib/phoenix_kit_web/live/modules/languages.html.heex:348458 assigns.ml_enabled459460 # type: dynamic(%{..., ml_enabled: not false and not nil})461 # from: lib/phoenix_kit_web/live/modules/languages.html.heex:348462 assigns.ml_enabled463464 type warning found at:465 │466 355 │ <%= if @ml_enabled and length(@languages) >= 1 do %>467 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~468 │469 └─ lib/phoenix_kit_web/live/modules/languages.html.heex:355: PhoenixKitWeb.Live.Modules.Languages.render/1470471 warning: this clause of defp off_type_upload_error/1 is never used (or it will always fail/warn when invoked)472 │473 377 │ defp off_type_upload_error(_), do: gettext("Only the allowed file types can be added here.")474 │ ~475 │476 └─ lib/phoenix_kit_web/live/components/media_selector_modal.ex:377:8: PhoenixKitWeb.Live.Components.MediaSelectorModal.off_type_upload_error/1477478 warning: comparison between distinct types found:479480 folder_uuid == nil481482 given types:483484 dynamic(not nil) == nil485486 where "folder_uuid" was given the type:487488 # type: dynamic(not nil)489 # from: lib/phoenix_kit_web/components/media_browser.ex:1004490 folder_uuid in [nil, ""]491492 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 false493494 type warning found at:495 │496 1016 │ {nil, [], Storage.list_folders(nil, scope, lib), not is_nil(folder_uuid)}497 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~498 │499 └─ lib/phoenix_kit_web/components/media_browser.ex:1016: PhoenixKitWeb.Components.MediaBrowser.resolve_folder/3500501 warning: the following conditional expression:502503 !assigns.is_renaming504505 will always evaluate to true because its inner expression has type:506507 dynamic(false or nil)508509 type warning found at:510 │511 662 │ @renaming_folder == @node.folder.uuid && !@is_renaming && "renaming-preview"512 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~513 │514 └─ lib/phoenix_kit_web/components/folder_explorer.ex:662: PhoenixKitWeb.Components.FolderExplorer."folder_tree_node (overridable 1)"/1515516 warning: this clause of defp build_burn_canvas/1 is never used (or it will always fail/warn when invoked)517 │518 1424 │ defp build_burn_canvas(_file), do: nil519 │ ~520 │521 └─ lib/phoenix_kit_web/components/media_canvas_viewer.ex:1424:8: PhoenixKitWeb.Components.MediaCanvasViewer.build_burn_canvas/1522523 warning: this clause of defp build_viewer_canvas/3 is never used (or it will always fail/warn when invoked)524 │525 1507 │ defp build_viewer_canvas(nil, _annotations, _locked?), do: nil526 │ ~527 │528 └─ lib/phoenix_kit_web/components/media_canvas_viewer.ex:1507:8: PhoenixKitWeb.Components.MediaCanvasViewer.build_viewer_canvas/3529530 warning: incompatible types given to PhoenixKit.Dashboard.Tab.localized_label/1:531532 PhoenixKit.Dashboard.Tab.localized_label(subtab)533534 given types:535536 -dynamic(%{..., active: term(), path: binary()})-537538 but expected one of:539540 #1541 %PhoenixKit.Dashboard.Tab{label: nil}542543 #2544 %PhoenixKit.Dashboard.Tab{label: not nil}545546 where "subtab" was given the types:547548 # type: dynamic(%{..., path: binary()})549 # from: lib/phoenix_kit_web/components/dashboard/sidebar.ex:597550 build_path(subtab.path, assigns.locale)551552 # type: dynamic(%{..., active: term(), path: binary()})553 # from: lib/phoenix_kit_web/components/dashboard/sidebar.ex:600554 subtab.active555556 type warning found at:557 │558 606 │ <span>{Tab.localized_label(subtab)}</span>559 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~560 │561 └─ lib/phoenix_kit_web/components/dashboard/sidebar.ex:606: PhoenixKitWeb.Components.Dashboard.Sidebar."mobile_tab_with_subtabs (overridable 1)"/1562563 warning: the following conditional expression:564565 assigns.tab.external566567 will always evaluate to:568569 dynamic(not false and not nil)570571 where "assigns" was given the types:572573 # type: dynamic(%{..., tab: %{..., external: not false and not nil}})574 # from: lib/phoenix_kit_web/components/dashboard/tab_item.ex:89575 assigns576577 # type: dynamic(%{..., tab: %{..., external: term()}})578 # from: lib/phoenix_kit_web/components/dashboard/tab_item.ex:90:17579 assigns.tab.external580581 # type: dynamic(%{..., tab: %{..., external: not false and not nil}})582 # from: lib/phoenix_kit_web/components/dashboard/tab_item.ex:90:17583 assigns.tab.external584585 type warning found at:586 │587 110 │ <%= if @tab.external do %>588 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~589 │590 └─ lib/phoenix_kit_web/components/dashboard/tab_item.ex:110: PhoenixKitWeb.Components.Dashboard.TabItem.render_tab/1591592 warning: incompatible types given to flyout_id/1:593594 flyout_id(assigns.tab)595596 given types:597598 -dynamic(%{..., active: term(), id: term()})-599600 but expected one of:601602 %PhoenixKit.Dashboard.Tab{}603604 where "assigns" was given the types:605606 # type: dynamic(%{..., tab: %{..., id: term()}})607 # from: lib/phoenix_kit_web/components/dashboard/admin_sidebar.ex:217:15608 PhoenixKit.Dashboard.TabHelpers.get_subtabs_for(assigns.tab.id, assigns.all_tabs)609610 # type: dynamic(%{..., all_tabs: term(), tab: %{..., id: term()}})611 # from: lib/phoenix_kit_web/components/dashboard/admin_sidebar.ex:217:15612 PhoenixKit.Dashboard.TabHelpers.get_subtabs_for(assigns.tab.id, assigns.all_tabs)613614 # type: dynamic(%{..., all_tabs: term(), tab: %{..., active: term(), id: term()}})615 # from: lib/phoenix_kit_web/components/dashboard/admin_sidebar.ex:222:11616 PhoenixKit.Dashboard.Tab.show_subtabs?(assigns.tab, assigns.tab.active)617618 type warning found at:619 │620 244 │ |> assign(:flyout_id, flyout_id(assigns.tab))621 │ ~622 │623 └─ lib/phoenix_kit_web/components/dashboard/admin_sidebar.ex:244:29: PhoenixKitWeb.Components.Dashboard.AdminSidebar."admin_tab_with_subtabs (overridable 1)"/1624625 warning: the right-hand side of || (shown as ... below) will never be executed:626627 lang.name || dialect || ...628629 because the left-hand side always evaluates to:630631 dynamic(not false and not nil)632633 where "dialect" was given the types:634635 # type: dynamic(nil or binary())636 # from: lib/phoenix_kit_web/components/core/language_switcher.ex:618:30637 PhoenixKit.Modules.Languages.DialectMapper.extract_base(dialect)638639 # type: binary()640 # from: lib/phoenix_kit_web/components/core/language_switcher.ex:619:16641 get_language_flag(dialect)642643 where "lang" was given the types:644645 # type: dynamic(%{..., code: term()})646 # from: lib/phoenix_kit_web/components/core/language_switcher.ex:617:17647 dialect = lang.code648649 # type: dynamic(%{..., code: term(), name: term()})650 # from: lib/phoenix_kit_web/components/core/language_switcher.ex:624:26651 lang.name652653 type warning found at:654 │655 624 │ "name" => lang.name || dialect || "Unknown",656 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~657 │658 └─ lib/phoenix_kit_web/components/core/language_switcher.ex:624: PhoenixKitWeb.Components.Core.LanguageSwitcher."language_switcher_buttons (overridable 1)"/1659660 warning: the right-hand side of || (shown as ... below) will never be executed:661662 lang.name || dialect || ...663664 because the left-hand side always evaluates to:665666 dynamic(not false and not nil)667668 where "dialect" was given the types:669670 # type: dynamic(nil or binary())671 # from: lib/phoenix_kit_web/components/core/language_switcher.ex:745:30672 PhoenixKit.Modules.Languages.DialectMapper.extract_base(dialect)673674 # type: binary()675 # from: lib/phoenix_kit_web/components/core/language_switcher.ex:746:16676 get_language_flag(dialect)677678 where "lang" was given the types:679680 # type: dynamic(%{..., code: term()})681 # from: lib/phoenix_kit_web/components/core/language_switcher.ex:744:17682 dialect = lang.code683684 # type: dynamic(%{..., code: term(), name: term()})685 # from: lib/phoenix_kit_web/components/core/language_switcher.ex:751:26686 lang.name687688 type warning found at:689 │690 751 │ "name" => lang.name || dialect || "Unknown",691 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~692 │693 └─ lib/phoenix_kit_web/components/core/language_switcher.ex:751: PhoenixKitWeb.Components.Core.LanguageSwitcher."language_switcher_inline (overridable 1)"/1694695 warning: this clause of defp has_denied_permissions/1 is never used (or it will always fail/warn when invoked)696 │697 272 │ defp has_denied_permissions(_), do: false698 │ ~699 │700 └─ lib/phoenix_kit_web/components/core/aws_credentials_verify.ex:272:8: PhoenixKitWeb.Components.Core.AWSCredentialsVerify.has_denied_permissions/1701702 warning: comparison between distinct types found:703704 scope_folder_id == nil705706 given types:707708 dynamic(not nil) == nil709710 where "scope_folder_id" was given the type:711712 # type: dynamic(not nil)713 # from: lib/modules/storage/storage.ex:1831:48714 scope_folder_id715716 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 false717718 type warning found at:719 │720 1846 │ in_folder_tree(moving?(folder, new_parent) or not is_nil(scope_folder_id), fn ->721 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~722 │723 └─ lib/modules/storage/storage.ex:1846: PhoenixKit.Modules.Storage.update_folder/3724725 warning: the right-hand side of || will always execute:726727 PhoenixKit.Jobs.Run.__schema__(:prefix)728729 because the left-hand side always evaluates to:730731 dynamic(nil)732733 where "x" (context Kernel) was given the type:734735 # type: dynamic(nil)736 # from: lib/phoenix_kit/jobs/oban_store.ex:81737 x738739 type warning found at:740 │741 81 │ run_prefix = Run.__schema__(:prefix) || "public"742 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~743 │744 └─ lib/phoenix_kit/jobs/oban_store.ex:81: PhoenixKit.Jobs.ObanStore.stalled_queues/2745746 warning: this clause of defp reason_note/1 is never used (or it will always fail/warn when invoked)747 │748 363 │ defp reason_note(:declined), do: "Nothing was changed.\n"749 │ ~750 │751 └─ lib/phoenix_kit/install/missing_igniter.ex:363:8: PhoenixKit.Install.MissingIgniter.reason_note/1752753 warning: incompatible types given to Map.get/2:754755 Map.get(item, field)756757 given types:758759 -dynamic(not map())-, dynamic(atom())760761 but expected one of:762763 map(), term()764765 where "field" was given the types:766767 # type: dynamic(atom())768 # from: lib/phoenix_kit/dashboard/context_selector.ex:486:24769 field770771 # type: atom()772 # from: lib/phoenix_kit/dashboard/context_selector.ex:486:36773 is_atom(field)774775 where "item" was given the type:776777 # type: dynamic(not map())778 # from: lib/phoenix_kit/dashboard/context_selector.ex:486:18779 item780781 type warning found at:782 │783 486 │ defp get_field(item, field) when is_atom(field), do: Map.get(item, field)784 │ ~785 │786 └─ lib/phoenix_kit/dashboard/context_selector.ex:486:60: PhoenixKit.Dashboard.ContextSelector.get_field/2787788 warning: this clause of defp get_field/2 is never used (or it will always fail/warn when invoked)789 │790 487 │ defp get_field(_, _), do: nil791 │ ~792 │793 └─ lib/phoenix_kit/dashboard/context_selector.ex:487:8: PhoenixKit.Dashboard.ContextSelector.get_field/2794795 warning: the following clause is redundant:796797 defp get_context_field(context, field)798 when is_map(context) and is_map_key(context, :__struct__) and799 is_atom(:erlang.map_get(:__struct__, context))800801 it has type:802803 dynamic(%{..., __struct__: atom()}), dynamic()804805 previous clauses have already matched on the following types:806807 map(), term()808809 │810 752 │ defp get_context_field(context, field) when is_struct(context) do811 │ ~812 │813 └─ lib/phoenix_kit/dashboard/badge.ex:752:8: PhoenixKit.Dashboard.Badge.get_context_field/2814815 warning: comparison between distinct types found:816817 result == :ok818819 given types:820821 dynamic(822 {:error, binary()} or {:ok, nil or binary() or empty_list() or non_empty_list(term(), term())}823 ) == :ok824825 where "result" was given the type:826827 # type: dynamic(828 {:error, binary()} or {:ok, nil or binary() or empty_list() or non_empty_list(term(), term())}829 )830 # from: lib/modules/storage/services/manager.ex:576:14831 result =832 try do833 ...834 end835836 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 false837838 type warning found at:839 │840 583 │ ok? = result == :ok or match?({:ok, _}, result)841 │ ~842 │843 └─ lib/modules/storage/services/manager.ex:583:20: PhoenixKit.Modules.Storage.Manager.write_to/4844845Generated phoenix_kit app846==> phoenix_kit_billing847Compiling 88 files (.ex)848 warning: the following conditional expression:849850 days851852 will always evaluate to:853854 dynamic(float() or integer())855856 where "days" was given the type:857858 # type: dynamic(float() or integer())859 # from: lib/phoenix_kit_billing/web/subscription_detail.html.heex:147860 days = days_until_renewal(assigns.subscription)861862 type warning found at:863 │864 148 │ <%= if days && days > 0 do %>865 │ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~866 │867 └─ lib/phoenix_kit_billing/web/subscription_detail.html.heex:148: PhoenixKitBilling.Web.SubscriptionDetail.render/1868869 warning: this clause of defp get_country_name/1 is never used (or it will always fail/warn when invoked)870 │871 80 │ defp get_country_name(nil), do: ""872 │ ~873 │874 └─ lib/phoenix_kit_billing/web/settings.ex:80:8: PhoenixKitBilling.Web.Settings.get_country_name/1875876 warning: the following clause will never match:877878 %PhoenixKitBilling.Transaction{} ->879880 it is expected to match on type:881882 dynamic(not %PhoenixKitBilling.Transaction{})883884 type warning found at:885 │886 61 │ %Transaction{} ->887 │ ~888 │889 └─ lib/phoenix_kit_billing/web/payment_confirmation_print.ex:61:7: PhoenixKitBilling.Web.PaymentConfirmationPrint.do_mount/3890891 warning: this clause of defp refresh_order/1 is never used (or it will always fail/warn when invoked)892 │893 100 │ defp refresh_order(socket), do: socket894 │ ~895 │896 └─ lib/phoenix_kit_billing/web/order_detail.ex:100:8: PhoenixKitBilling.Web.OrderDetail.refresh_order/1897898 warning: this clause of defp refresh_invoice/1 is never used (or it will always fail/warn when invoked)899 │900 139 │ defp refresh_invoice(socket), do: socket901 │ ~902 │903 └─ lib/phoenix_kit_billing/web/invoice_detail.ex:139:8: PhoenixKitBilling.Web.InvoiceDetail.refresh_invoice/1904905 warning: the following clause will never match:906907 %PhoenixKitBilling.Transaction{} ->908909 it is expected to match on type:910911 dynamic(not %PhoenixKitBilling.Transaction{})912913 type warning found at:914 │915 65 │ %Transaction{} ->916 │ ~917 │918 └─ lib/phoenix_kit_billing/web/credit_note_print.ex:65:7: PhoenixKitBilling.Web.CreditNotePrint.do_mount/3919920Generated phoenix_kit_billing app921==> phoenix_kit_ecommerce922Compiling 123 files (.ex)923Compiling lib/phoenix_kit_ecommerce/ai_translatable.ex (it's taking more than 10s)924 warning: unused require Logger925 │926 67 │ require Logger927 │ ~928 │929 └─ lib/phoenix_kit_ecommerce/services/image_fingerprint.ex:67:3930931Compiling lib/phoenix_kit_ecommerce/gettext.ex (it's taking more than 10s)932 error: module PhoenixKitAI.Components.AITranslate.Embed is not loaded and could not be found933 │934 25 │ use PhoenixKitAI.Components.AITranslate.Embed935 │ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^936 │937 └─ lib/phoenix_kit_ecommerce/web/product_form.ex:25: PhoenixKitEcommerce.Web.ProductForm (module)938939940== Compilation error in file lib/phoenix_kit_ecommerce/web/product_form.ex ==941** (CompileError) lib/phoenix_kit_ecommerce/web/product_form.ex: cannot compile module PhoenixKitEcommerce.Web.ProductForm (errors have been logged)942 (elixir 1.20.3) expanding macro: Kernel.use/1943 lib/phoenix_kit_ecommerce/web/product_form.ex:25: PhoenixKitEcommerce.Web.ProductForm (module)944 (elixir 1.20.3) expanding macro: Kernel.if/2945 lib/phoenix_kit_ecommerce/web/product_form.ex:24: PhoenixKitEcommerce.Web.ProductForm (module)946could not compile dependency :phoenix_kit_ecommerce, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile phoenix_kit_ecommerce --force", update it with "mix deps.update phoenix_kit_ecommerce" or clean it with "mix deps.clean phoenix_kit_ecommerce"