-
Notifications
You must be signed in to change notification settings - Fork 29.7k
[CP-stable]Assert macOS framework artifact contains xcprivacy manifest #155556
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
[CP-stable]Assert macOS framework artifact contains xcprivacy manifest #155556
Conversation
…155189) Add tool test to validate a built macOS app contains the FlutterMacOS framework xcprivacy manifest. Blocked on flutter/engine#55078 rolling in.
|
@jmagman please fill out the PR description above, afterwards the release team will review this request. |
|
@jmagman is this cherry-pick request still relevant? |
Yes, I will follow up on it. |
jmagman
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
|
Not taking this for the hotfix release. Please message me if that is incorrect and we need to work to get this pr landed. |
|
I am closing this as I believe this is obsolete and we already merged: 077c008 to the 3.27 branch. |
Whoops, I got mixed up, this is to 3.24 |
…on (flutter#157136) The PrivacyInfo.xcprivacy file was originally copied to the top-level macOS framework, but instead needs to be in the Resources directory (which is a different path than iOS). This caused codesigning issues flutter#157016. The path is being corrected flutter/engine#55938 so update the framework test to handle either path. It will be updated to just check the correct path once it rolls into the framework.
| // the correct location is Versions/A/Resources/PrivacyInfo.xcprivacy. | ||
| // TODO(jmagman): Switch expectation to only check Resources/ once the new path rolls. | ||
| // https://github.com/flutter/flutter/issues/157016#issuecomment-2420786225 | ||
| final File topLevelPrivacy = outputFlutterFramework.childFile('PrivacyInfo.xcprivacy'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
WDYT @jmagman?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perfect, thank you!
|
auto label is removed for flutter/flutter/155556, due to - The status or check suite Mac_arm64 tool_host_cross_arch_tests has failed. Please fix the issues identified (or deflake) before re-applying this label. |
|
I'm confused by the test output of the failing test, however, it occurs that we will probably have to roll the engine this PR, or roll the engine into the upstream branch and then rebase this PR, until the updated test will pass. |
Oh right, the privacy manifest doesn't exist at all in the engine in stable. The engine roll should happen first. |
### Issue Link: flutter/flutter#154915 ### Changelog Description: Comply with the new Apple privacy manifest policy for the macOS Flutter engine framework and prevent the "Missing privacy manifest" warning when submitting a macOS app to the App Store. ### Impact Description: The macOS App Store will start enforcing privacy manifests for third-party SDKs starting November 12, 2024. This change adds an empty privacy manifest to the Flutter engine FlutterMacOS.framework to comply with this new policy and prevents the warning. ### Workaround: Add an empty PrivacyInfo.xcprivacy plist to FlutterMacOS.framework and re-codesign it manually. ### Risk: What is the risk level of this cherry-pick? ### Test Coverage: Are you confident that your fix is well-tested by automated tests? A test was added to the framework, which should also be cherry-picked flutter/flutter#155556. While we can confirm the expected file is present, only a TestFlight/App Store submission will confirm the warning is gone. ### Validation Steps: Submit a Flutter macOS app to TestFlight or the App Store. Confirm there is no submission warning email sent.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I updated this to include flutter/engine#56059
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh and post submits passed.
…4aef0ba03929a0e6de65e0951f
cbracken
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nice!
|
LGTM |
### Issue Link: flutter/flutter#154915 ### Changelog Description: Comply with the new Apple privacy manifest policy for the macOS Flutter engine framework and prevent the "Missing privacy manifest" warning when submitting a macOS app to the App Store. ### Impact Description: The macOS App Store will start enforcing privacy manifests for third-party SDKs starting November 12, 2024. This change adds an empty privacy manifest to the Flutter engine FlutterMacOS.framework to comply with this new policy and prevents the warning. ### Workaround: Add an empty PrivacyInfo.xcprivacy plist to FlutterMacOS.framework and re-codesign it manually. ### Risk: What is the risk level of this cherry-pick? ### Test Coverage: Are you confident that your fix is well-tested by automated tests? A test was added to the framework, which should also be cherry-picked flutter/flutter#155556. While we can confirm the expected file is present, only a TestFlight/App Store submission will confirm the warning is gone. ### Validation Steps: Submit a Flutter macOS app to TestFlight or the App Store. Confirm there is no submission warning email sent.
### Issue Link: flutter/flutter#154915 ### Changelog Description: Comply with the new Apple privacy manifest policy for the macOS Flutter engine framework and prevent the "Missing privacy manifest" warning when submitting a macOS app to the App Store. ### Impact Description: The macOS App Store will start enforcing privacy manifests for third-party SDKs starting November 12, 2024. This change adds an empty privacy manifest to the Flutter engine FlutterMacOS.framework to comply with this new policy and prevents the warning. ### Workaround: Add an empty PrivacyInfo.xcprivacy plist to FlutterMacOS.framework and re-codesign it manually. ### Risk: What is the risk level of this cherry-pick? ### Test Coverage: Are you confident that your fix is well-tested by automated tests? A test was added to the framework, which should also be cherry-picked flutter/flutter#155556. While we can confirm the expected file is present, only a TestFlight/App Store submission will confirm the warning is gone. ### Validation Steps: Submit a Flutter macOS app to TestFlight or the App Store. Confirm there is no submission warning email sent.
### Issue Link: flutter/flutter#154915 ### Changelog Description: Comply with the new Apple privacy manifest policy for the macOS Flutter engine framework and prevent the "Missing privacy manifest" warning when submitting a macOS app to the App Store. ### Impact Description: The macOS App Store will start enforcing privacy manifests for third-party SDKs starting November 12, 2024. This change adds an empty privacy manifest to the Flutter engine FlutterMacOS.framework to comply with this new policy and prevents the warning. ### Workaround: Add an empty PrivacyInfo.xcprivacy plist to FlutterMacOS.framework and re-codesign it manually. ### Risk: What is the risk level of this cherry-pick? ### Test Coverage: Are you confident that your fix is well-tested by automated tests? A test was added to the framework, which should also be cherry-picked flutter/flutter#155556. While we can confirm the expected file is present, only a TestFlight/App Store submission will confirm the warning is gone. ### Validation Steps: Submit a Flutter macOS app to TestFlight or the App Store. Confirm there is no submission warning email sent.
This is the framework-side test for flutter/engine#55366. This test will fail unless it is run on a roll containing that fix.
Issue Link:
#154915
Changelog Description:
Test that a built macOS app contains the FlutterMacOS framework privacy manifest and validates flutter/engine#55366.
Impact Description:
Adds confidence the Flutter macOS engine framework contains the expected privacy manifest at the right path.
Workaround:
N/A
Risk:
What is the risk level of this cherry-pick?
Test Coverage:
Are you confident that your fix is well-tested by automated tests?
Validation Steps:
Run the flutter_tool tests