Skip to content

Commit

Permalink
Remove privacy manifest file and related build tooling
Browse files Browse the repository at this point in the history
Summary:
After consulting with the privacy team, we've agreed that it is best to remove the privacy manifest file until we can actually confirm if it is actually required.

In particular, Apple seems to currently only send warnings to apps that it detects are using required reason APIs without declaring these in their own privacy manifest. As IGListKit does not implement any of these APIs, the manifest shouldn't be required.

Following this change, if anyone does receive a rejection noticed from Apple and it is like to IGListKit, please open a new issue in this GitHub repo so we can re-review this decision at that point.

Differential Revision: D56618598

fbshipit-source-id: df895708c318156525a62a007ebeae7934a870ed
  • Loading branch information
TimOliver authored and facebook-github-bot committed Apr 26, 2024
1 parent 86d31b1 commit 194446a
Show file tree
Hide file tree
Showing 10 changed files with 4 additions and 76 deletions.
1 change: 0 additions & 1 deletion IGListDiffKit.podspec
Expand Up @@ -23,7 +23,6 @@ Pod::Spec.new do |s|
s.source_files = 'Source/IGListDiffKit/**/*.{h,m,mm}'
s.private_header_files = 'Source/IGListDiffKit/Internal/*.h'

s.resource_bundles = { "#{s.name}_Privacy" => ['Source/PrivacyInfo.xcprivacy'] }
s.requires_arc = true

s.ios.deployment_target = '11.0'
Expand Down
1 change: 0 additions & 1 deletion IGListKit.podspec
Expand Up @@ -35,7 +35,6 @@ Pod::Spec.new do |s|

s.osx.source_files = 'Source/IGListKit/IGListKit.h'

s.resource_bundles = { "#{s.name}_Privacy" => ['Source/PrivacyInfo.xcprivacy'] }
s.requires_arc = true

s.ios.deployment_target = '11.0'
Expand Down
22 changes: 2 additions & 20 deletions IGListKit.xcodeproj/project.pbxproj
Expand Up @@ -375,7 +375,7 @@
88144F1B1D870EDC007C7F66 /* IGTestSingleItemDataSource.m in Sources */ = {isa = PBXBuildFile; fileRef = 88144F021D870EDC007C7F66 /* IGTestSingleItemDataSource.m */; };
88144F1D1D870EDC007C7F66 /* IGTestSupplementarySource.m in Sources */ = {isa = PBXBuildFile; fileRef = 88144F061D870EDC007C7F66 /* IGTestSupplementarySource.m */; };
882BC1321E0118CB0083B311 /* IGTestObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 88144F001D870EDC007C7F66 /* IGTestObject.m */; };
883797082022304E00B94676 /* BuildFile in Headers */ = {isa = PBXBuildFile; };
883797082022304E00B94676 /* (null) in Headers */ = {isa = PBXBuildFile; };
88379728202236AB00B94676 /* IGListAdapterUpdateTester.m in Sources */ = {isa = PBXBuildFile; fileRef = 294CDE621F995DD7002CF6E4 /* IGListAdapterUpdateTester.m */; };
88379729202236AC00B94676 /* IGListAdapterUpdateTester.m in Sources */ = {isa = PBXBuildFile; fileRef = 294CDE621F995DD7002CF6E4 /* IGListAdapterUpdateTester.m */; };
885FE1DD1DC51A0D009CE2B4 /* IGListKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 885FE1D41DC51A0D009CE2B4 /* IGListKit.framework */; };
Expand Down Expand Up @@ -424,14 +424,6 @@
F10C8F582B982EE7009F4690 /* IGListDefaultExperiments.h in Headers */ = {isa = PBXBuildFile; fileRef = F10C8F562B982DFD009F4690 /* IGListDefaultExperiments.h */; };
F10C8F5B2B9830F0009F4690 /* IGListTestCollectionViewLayout.m in Sources */ = {isa = PBXBuildFile; fileRef = F10C8F592B9830E6009F4690 /* IGListTestCollectionViewLayout.m */; };
F10C8F5C2B9830F1009F4690 /* IGListTestCollectionViewLayout.m in Sources */ = {isa = PBXBuildFile; fileRef = F10C8F592B9830E6009F4690 /* IGListTestCollectionViewLayout.m */; };
F15F1DE02BA40D05002AF3FE /* PrivacyInfo.xcprivacy in Copy Privacy Manifest */ = {isa = PBXBuildFile; fileRef = F15F1DDA2BA408C1002AF3FE /* PrivacyInfo.xcprivacy */; };
F15F1DE22BA40D22002AF3FE /* PrivacyInfo.xcprivacy in Copy Privacy Manifest */ = {isa = PBXBuildFile; fileRef = F15F1DDA2BA408C1002AF3FE /* PrivacyInfo.xcprivacy */; };
F15F1DE42BA40D2A002AF3FE /* PrivacyInfo.xcprivacy in Copy Privacy Manifest */ = {isa = PBXBuildFile; fileRef = F15F1DDA2BA408C1002AF3FE /* PrivacyInfo.xcprivacy */; };
F15F1DE62BA40D41002AF3FE /* PrivacyInfo.xcprivacy in Copy Privacy Manifest */ = {isa = PBXBuildFile; fileRef = F15F1DDA2BA408C1002AF3FE /* PrivacyInfo.xcprivacy */; };
F15F1DE82BA40D64002AF3FE /* PrivacyInfo.xcprivacy in Copy Privacy Manifest */ = {isa = PBXBuildFile; fileRef = F15F1DDA2BA408C1002AF3FE /* PrivacyInfo.xcprivacy */; };
F15F1DEA2BA40D74002AF3FE /* PrivacyInfo.xcprivacy in Copy Privacy Manifest */ = {isa = PBXBuildFile; fileRef = F15F1DDA2BA408C1002AF3FE /* PrivacyInfo.xcprivacy */; };
F15F1DEC2BA40D90002AF3FE /* PrivacyInfo.xcprivacy in Copy Privacy Manifest */ = {isa = PBXBuildFile; fileRef = F15F1DDA2BA408C1002AF3FE /* PrivacyInfo.xcprivacy */; };
F15F1DEE2BA40D9C002AF3FE /* PrivacyInfo.xcprivacy in Copy Privacy Manifest */ = {isa = PBXBuildFile; fileRef = F15F1DDA2BA408C1002AF3FE /* PrivacyInfo.xcprivacy */; };
F1855A4C29BC565600558D18 /* IGListDiffDescriptionStringTests.m in Sources */ = {isa = PBXBuildFile; fileRef = F1855A4B29BC565600558D18 /* IGListDiffDescriptionStringTests.m */; };
F1855A4D29BC565600558D18 /* IGListDiffDescriptionStringTests.m in Sources */ = {isa = PBXBuildFile; fileRef = F1855A4B29BC565600558D18 /* IGListDiffDescriptionStringTests.m */; };
F1855A4E29BC565600558D18 /* IGListDiffDescriptionStringTests.m in Sources */ = {isa = PBXBuildFile; fileRef = F1855A4B29BC565600558D18 /* IGListDiffDescriptionStringTests.m */; };
Expand Down Expand Up @@ -526,7 +518,6 @@
dstPath = "";
dstSubfolderSpec = 7;
files = (
F15F1DE02BA40D05002AF3FE /* PrivacyInfo.xcprivacy in Copy Privacy Manifest */,
);
name = "Copy Privacy Manifest";
runOnlyForDeploymentPostprocessing = 0;
Expand All @@ -537,7 +528,6 @@
dstPath = "";
dstSubfolderSpec = 7;
files = (
F15F1DE22BA40D22002AF3FE /* PrivacyInfo.xcprivacy in Copy Privacy Manifest */,
);
name = "Copy Privacy Manifest";
runOnlyForDeploymentPostprocessing = 0;
Expand All @@ -548,7 +538,6 @@
dstPath = "";
dstSubfolderSpec = 7;
files = (
F15F1DE42BA40D2A002AF3FE /* PrivacyInfo.xcprivacy in Copy Privacy Manifest */,
);
name = "Copy Privacy Manifest";
runOnlyForDeploymentPostprocessing = 0;
Expand All @@ -559,7 +548,6 @@
dstPath = "";
dstSubfolderSpec = 7;
files = (
F15F1DE62BA40D41002AF3FE /* PrivacyInfo.xcprivacy in Copy Privacy Manifest */,
);
name = "Copy Privacy Manifest";
runOnlyForDeploymentPostprocessing = 0;
Expand All @@ -570,7 +558,6 @@
dstPath = "";
dstSubfolderSpec = 7;
files = (
F15F1DE82BA40D64002AF3FE /* PrivacyInfo.xcprivacy in Copy Privacy Manifest */,
);
name = "Copy Privacy Manifest";
runOnlyForDeploymentPostprocessing = 0;
Expand All @@ -581,7 +568,6 @@
dstPath = "";
dstSubfolderSpec = 7;
files = (
F15F1DEA2BA40D74002AF3FE /* PrivacyInfo.xcprivacy in Copy Privacy Manifest */,
);
name = "Copy Privacy Manifest";
runOnlyForDeploymentPostprocessing = 0;
Expand All @@ -592,7 +578,6 @@
dstPath = "";
dstSubfolderSpec = 7;
files = (
F15F1DEC2BA40D90002AF3FE /* PrivacyInfo.xcprivacy in Copy Privacy Manifest */,
);
name = "Copy Privacy Manifest";
runOnlyForDeploymentPostprocessing = 0;
Expand All @@ -603,7 +588,6 @@
dstPath = "";
dstSubfolderSpec = 7;
files = (
F15F1DEE2BA40D9C002AF3FE /* PrivacyInfo.xcprivacy in Copy Privacy Manifest */,
);
name = "Copy Privacy Manifest";
runOnlyForDeploymentPostprocessing = 0;
Expand Down Expand Up @@ -857,7 +841,6 @@
F10C8F562B982DFD009F4690 /* IGListDefaultExperiments.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = IGListDefaultExperiments.h; sourceTree = "<group>"; };
F10C8F592B9830E6009F4690 /* IGListTestCollectionViewLayout.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = IGListTestCollectionViewLayout.m; sourceTree = "<group>"; };
F10C8F5A2B9830E6009F4690 /* IGListTestCollectionViewLayout.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = IGListTestCollectionViewLayout.h; sourceTree = "<group>"; };
F15F1DDA2BA408C1002AF3FE /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = PrivacyInfo.xcprivacy; sourceTree = "<group>"; };
F15F1DDB2BA40B84002AF3FE /* Package.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Package.swift; sourceTree = SOURCE_ROOT; };
F15F1DDC2BA40BC9002AF3FE /* IGListKit.podspec */ = {isa = PBXFileReference; lastKnownFileType = text; path = IGListKit.podspec; sourceTree = "<group>"; };
F15F1DDD2BA40BC9002AF3FE /* IGListDiffKit.podspec */ = {isa = PBXFileReference; lastKnownFileType = text; path = IGListDiffKit.podspec; sourceTree = "<group>"; };
Expand Down Expand Up @@ -971,7 +954,6 @@
7A02CEC6236150C400B49FAE /* IGListKit */,
7A92EA9823A8A42000E5A13D /* IGListSwiftKit */,
7A02D0AC236153CE00B49FAE /* Info.plist */,
F15F1DDA2BA408C1002AF3FE /* PrivacyInfo.xcprivacy */,
);
path = Source;
sourceTree = "<group>";
Expand Down Expand Up @@ -1560,7 +1542,7 @@
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
883797082022304E00B94676 /* BuildFile in Headers */,
883797082022304E00B94676 /* (null) in Headers */,
7A02D0C023615CE500B49FAE /* IGListKit.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
Expand Down
1 change: 0 additions & 1 deletion IGListSwiftKit.podspec
Expand Up @@ -28,7 +28,6 @@ Pod::Spec.new do |s|
]
end

s.resource_bundles = { "#{s.name}_Privacy" => ['Source/PrivacyInfo.xcprivacy'] }
s.requires_arc = true

s.swift_versions = ['4.0', '5.0', '5.1']
Expand Down
7 changes: 2 additions & 5 deletions Package.swift
@@ -1,4 +1,4 @@
// swift-tools-version:5.3
// swift-tools-version:5.0
import PackageDescription

let package = Package(
Expand All @@ -19,21 +19,18 @@ let package = Package(
.target(
name: "IGListDiffKit",
path: "spm/Sources/IGListDiffKit",
resources: [.copy("PrivacyInfo.xcprivacy")],
publicHeadersPath: "include"
),
.target(
name: "IGListKit",
dependencies: ["IGListDiffKit"],
path: "spm/Sources/IGListKit",
resources: [.copy("PrivacyInfo.xcprivacy")],
publicHeadersPath: "include"
),
.target(
name: "IGListSwiftKit",
dependencies: ["IGListKit"],
path: "spm/Sources/IGListSwiftKit",
resources: [.copy("PrivacyInfo.xcprivacy")]
path: "spm/Sources/IGListSwiftKit"
),
],
cLanguageStandard: .c11,
Expand Down
22 changes: 0 additions & 22 deletions Source/PrivacyInfo.xcprivacy

This file was deleted.

23 changes: 0 additions & 23 deletions scripts/generate_spm_sources_layout.sh
Expand Up @@ -236,27 +236,6 @@ function generate_ig_list_swift_kit() {
generate_ig_list_swift_kit_spm_sources
}

function generate_ig_privacy_manifest_spm() {
echo "Generate symbolic links for privacy manifest"

directories=(${SPM_IG_LIST_KIT_SOURCES_PATH}
${SPM_IG_LIST_DIFF_KIT_SOURCES_PATH}
${SPM_IG_LIST_SWIFT_KIT_SOURCES_PATH})
manifest_file="Source/PrivacyInfo.xcprivacy"
SRC_ROOT=$(pwd)

for directory in ${directories[@]}; do
echo "Generated under ${directory}"
cd ${directory}
file_to_link=$(echo $manifest_file | sed "s|:| |g")
ln -s ../../../$file_to_link
cd $SRC_ROOT
done

echo " Done"
echo ""
}

# Delete all symbolik links from `spm` folder
function cleanup() {
rm -rf $SPM_IG_LIST_DIFF_KIT_PUBLIC_HEADERS_PATH/*.*
Expand All @@ -277,5 +256,3 @@ generate_ig_list_diff_kit
generate_ig_list_kit
#4
generate_ig_list_swift_kit
#5
generate_ig_privacy_manifest_spm
1 change: 0 additions & 1 deletion spm/Sources/IGListDiffKit/PrivacyInfo.xcprivacy

This file was deleted.

1 change: 0 additions & 1 deletion spm/Sources/IGListKit/PrivacyInfo.xcprivacy

This file was deleted.

1 change: 0 additions & 1 deletion spm/Sources/IGListSwiftKit/PrivacyInfo.xcprivacy

This file was deleted.

0 comments on commit 194446a

Please sign in to comment.