From ab2c432f691e9d96d4974664b9308889631f63d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=BDubor=20Jurena?= Date: Sun, 31 May 2026 10:54:31 +0200 Subject: [PATCH] ITMS-91061 - privacy manifest for Charts framework --- Podfile | 32 +++++++++++++++++++++++++++++ Pods/Charts/PrivacyInfo.xcprivacy | 14 +++++++++++++ Pods/Pods.xcodeproj/project.pbxproj | 4 ++++ 3 files changed, 50 insertions(+) create mode 100644 Pods/Charts/PrivacyInfo.xcprivacy diff --git a/Podfile b/Podfile index f8c2df3b2..1229b37d6 100644 --- a/Podfile +++ b/Podfile @@ -33,4 +33,36 @@ post_install do |installer| File.write(transformer, code.sub(original, patched)) end end + + # Inject a privacy manifest into the Charts framework (ITMS-91061). + # Charts 4.1.0 ships no PrivacyInfo.xcprivacy; it collects no data, performs + # no tracking, and uses no required-reason APIs, so this is a negative + # declaration. Re-applied here because `pod install` regenerates the project. + charts_manifest = <<~XML + + + + + \tNSPrivacyTracking + \t + \tNSPrivacyTrackingDomains + \t + \tNSPrivacyCollectedDataTypes + \t + \tNSPrivacyAccessedAPITypes + \t + + + XML + + manifest_path = installer.sandbox.root + 'Charts/PrivacyInfo.xcprivacy' + File.write(manifest_path, charts_manifest) + + charts_target = installer.pods_project.targets.find { |t| t.name == 'Charts' } + if charts_target + file_ref = installer.pods_project.new_file(manifest_path.to_s) + already_added = charts_target.resources_build_phase.files_references.include?(file_ref) + charts_target.resources_build_phase.add_file_reference(file_ref) unless already_added + installer.pods_project.save + end end diff --git a/Pods/Charts/PrivacyInfo.xcprivacy b/Pods/Charts/PrivacyInfo.xcprivacy new file mode 100644 index 000000000..e08a130bc --- /dev/null +++ b/Pods/Charts/PrivacyInfo.xcprivacy @@ -0,0 +1,14 @@ + + + + + NSPrivacyTracking + + NSPrivacyTrackingDomains + + NSPrivacyCollectedDataTypes + + NSPrivacyAccessedAPITypes + + + diff --git a/Pods/Pods.xcodeproj/project.pbxproj b/Pods/Pods.xcodeproj/project.pbxproj index 6a2b71889..489d852f5 100644 --- a/Pods/Pods.xcodeproj/project.pbxproj +++ b/Pods/Pods.xcodeproj/project.pbxproj @@ -7,6 +7,7 @@ objects = { /* Begin PBXBuildFile section */ + BEEF11110000000000000002 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = BEEF11110000000000000001 /* PrivacyInfo.xcprivacy */; }; 0031CEAD857A1BA158C0D2BE1870A438 /* Animator.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB10D8BF2F0C2E9B18C2130751D75984 /* Animator.swift */; }; 00351B69906B07C1950B97C40F65FABE /* RadarChartData.swift in Sources */ = {isa = PBXBuildFile; fileRef = C51F17D0D2858BA593E783811A2CF7E6 /* RadarChartData.swift */; }; 00E171A24B8B214FDC447BED6BB62C31 /* BarLineScatterCandleBubbleChartDataSet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B90B940BBEE17272D0FA9602CB3F1E1 /* BarLineScatterCandleBubbleChartDataSet.swift */; }; @@ -220,6 +221,7 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + BEEF11110000000000000001 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = PrivacyInfo.xcprivacy; sourceTree = ""; }; 0047677618FCD329E548FDDC0454A8AC /* LineChartView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LineChartView.swift; path = Source/Charts/Charts/LineChartView.swift; sourceTree = ""; }; 0055C3AB0AE0067E0AF50DA569843398 /* BarChartView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = BarChartView.swift; path = Source/Charts/Charts/BarChartView.swift; sourceTree = ""; }; 0187F74F0F2E1ADE4F205C203F88DE85 /* RadarChartView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RadarChartView.swift; path = Source/Charts/Charts/RadarChartView.swift; sourceTree = ""; }; @@ -759,6 +761,7 @@ E5EBEB4E3DD769CF77FBA0FB4DD5A204 /* Charts */ = { isa = PBXGroup; children = ( + BEEF11110000000000000001 /* PrivacyInfo.xcprivacy */, 64FE9452040001E25B5A3EB8D58108DB /* Core */, AEDEF3B82F3D135001FB2D1778DAD53F /* Support Files */, ); @@ -944,6 +947,7 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + BEEF11110000000000000002 /* PrivacyInfo.xcprivacy in Resources */, ); runOnlyForDeploymentPostprocessing = 0; };