Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PrivacyInfo.xcprivacy file is invalid for Apollo and ApolloApi. #3359

Closed
azilbershtein opened this issue Mar 20, 2024 · 7 comments · Fixed by apollographql/apollo-ios-dev#309
Assignees
Labels
bug Generally incorrect behavior

Comments

@azilbershtein
Copy link

Summary

TMS-91056: Invalid privacy manifest - The PrivacyInfo.xcprivacy file from the following path is invalid: “Frameworks/Apollo.framework/PrivacyInfo.xcprivacy”.
ITMS-91056: Invalid privacy manifest - The PrivacyInfo.xcprivacy file from the following path is invalid: “Frameworks/ApolloAPI.framework/PrivacyInfo.xcprivacy”.

Version

1.9.2

Steps to reproduce the behavior

Submit a version the includes the Apollo SDK to the store.

Logs

No response

Anything else?

No response

@azilbershtein azilbershtein added bug Generally incorrect behavior needs investigation labels Mar 20, 2024
@calvincestari
Copy link
Member

Thanks for reporting the issue @azilbershtein.

TMS-91056: Invalid privacy manifest - The PrivacyInfo.xcprivacy file from the following path is invalid: “Frameworks/Apollo.framework/PrivacyInfo.xcprivacy”.
ITMS-91056: Invalid privacy manifest - The PrivacyInfo.xcprivacy file from the following path is invalid: “Frameworks/ApolloAPI.framework/PrivacyInfo.xcprivacy”.

This doesn't give us much detail to work with unfortunately. Is there anything else related to the error? Have you confirmed that the privacy manifest files are in those locations and look like valid xml if you manually inspect them?

Submit a version the includes the Apollo SDK to the store.

We don't submit apps to the App Store so we cannot confirm this reproduction step; is there another way to reproduce this validation? Does Xcode have a standalone validation step that produces the same error?

@azilbershtein
Copy link
Author

The file is there, it's just invalid.
You can also see it in Xcode.
Screenshot 2024-03-21 at 10 01 29
API types for example have to be type and a reason.

@azilbershtein
Copy link
Author

Also, starting May 1 this will be requirement by Apple, this is next part of their warning.
While no action is required at this time, starting May 1, 2024, when you upload a new app or app update, keys and values in your app’s privacy manifest must be in a valid format. For more details about privacy manifest files, visit: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files
Can you prioritize this fix?

@calvincestari
Copy link
Member

The file is there, it's just invalid.

That is what is unclear to me - how is it invalid?

Apollo iOS does not do any tracking of any sort, nor does it use any of the reason required APIs. After reading through Apple's privacy manifest documentation again I think it might be because we have arrays for the NSPrivacyCollectedDataTypes and NSPrivacyAccessedAPITypes but they don't declare any of the required types because they don't use any. Maybe we're not meant to have those arrays and they parent keys are just empty?

I made that change and pushed it up to the fix/privacy-manifests branch. Try point your project at that branch and see if it resolves the validation issue? If it does then I'll merge it into main and we can make a patch release.

@azilbershtein
Copy link
Author

azilbershtein commented Mar 22, 2024

The fix on your branch looks good, I don't get any warnings.

@calvincestari
Copy link
Member

That's great news! I'll get that merged into main and we'll make a patch release so everyone can get the fix.

Copy link

Do you have any feedback for the maintainers? Please tell us by taking a one-minute survey. Your responses will help us understand Apollo iOS usage and allow us to serve you better.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Generally incorrect behavior
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants