Skip to content

Commit 6c04d27

Browse files
authored
Include App Clip dSYMS when include_symbols_in_bundle is True (#2882)
According to the documentation, setting `include_symbols_in_bundle` to `True` includes dSYMs "for the application and its dependencies". So App Clips, if any, should be included.
1 parent 9a25a7a commit 6c04d27

3 files changed

Lines changed: 40 additions & 0 deletions

File tree

apple/internal/ios_rules.bzl

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -765,6 +765,15 @@ def _ios_app_clip_impl(ctx):
765765
label_name = label.name,
766766
platform_prerequisites = platform_prerequisites,
767767
),
768+
partials.apple_symbols_file_partial(
769+
actions = actions,
770+
binary_artifact = binary_artifact,
771+
dependency_targets = embeddable_targets + ctx.attr.deps,
772+
dsym_binaries = debug_outputs.dsym_binaries,
773+
label_name = label.name,
774+
include_symbols_in_bundle = False,
775+
platform_prerequisites = platform_prerequisites,
776+
),
768777
]
769778

770779
if platform_prerequisites.platform.is_device:

test/starlark_tests/ios_application_tests.bzl

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -608,6 +608,19 @@ def ios_application_test_suite(name):
608608
target_under_test = "//test/starlark_tests/targets_under_test/ios:app_with_ext_and_fmwk_and_symbols_in_bundle",
609609
)
610610

611+
# Tests that app clips also contribute .symbols package files when
612+
# `include_symbols_in_bundle` is enabled on the embedding application.
613+
apple_symbols_file_test(
614+
name = "{}_archive_contains_apple_symbols_files_with_app_clip_test".format(name),
615+
binary_paths = [
616+
"Payload/app_with_app_clip_and_symbols_in_bundle.app/app_with_app_clip_and_symbols_in_bundle",
617+
"Payload/app_with_app_clip_and_symbols_in_bundle.app/AppClips/app_clip.app/app_clip",
618+
],
619+
build_type = "simulator",
620+
tags = [name],
621+
target_under_test = "//test/starlark_tests/targets_under_test/ios:app_with_app_clip_and_symbols_in_bundle",
622+
)
623+
611624
# Tests that the archive contains .symbols package files generated from
612625
# imported frameworks when `include_symbols_in_bundle` is enabled.
613626
apple_symbols_file_test(

test/starlark_tests/targets_under_test/ios/BUILD

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1128,6 +1128,24 @@ ios_application(
11281128
],
11291129
)
11301130

1131+
ios_application(
1132+
name = "app_with_app_clip_and_symbols_in_bundle",
1133+
app_clips = [":app_clip"],
1134+
bundle_id = "com.google.example",
1135+
entitlements = "//test/starlark_tests/resources:entitlements.plist",
1136+
families = ["iphone"],
1137+
include_symbols_in_bundle = True,
1138+
infoplists = [
1139+
"//test/starlark_tests/resources:Info.plist",
1140+
],
1141+
minimum_os_version = common.min_os_ios.appclip_support,
1142+
provisioning_profile = "//test/testdata/provisioning:integration_testing_ios.mobileprovision",
1143+
tags = common.fixture_tags,
1144+
deps = [
1145+
"//test/starlark_tests/resources:objc_main_lib",
1146+
],
1147+
)
1148+
11311149
ios_app_clip(
11321150
name = "app_clip",
11331151
bundle_id = "com.google.example.clip",

0 commit comments

Comments
 (0)