Skip to content

Commit

Permalink
deps: Upgrade packages within constraints (tools/upgrade pub)
Browse files Browse the repository at this point in the history
Actually, I have a hunch that this will be enough for #612,
'"Missing API declaration" warning from Apple'. As that issue says,
the only category of "required reason APIs" that Apple is alerting
about is "user defaults APIs". There's just one API in this
category: `NSUserDefaults`. Using Step 4 in these instructions from
a Flutter maintainer --
  flutter/flutter#145269 (comment)
-- I found that firebase_messaging and flutter_local_notifications,
but no other dependencies, have calls to NSUserDefaults without
declaring reasons in this category in a "privacy manifest" file.

Moreover, unlike in zulip-mobile, our Podfile calls
`use_frameworks!`, which should mean we don't have to manually copy
anything from our dependencies into a privacy manifest file of our
own. See zulip/zulip-mobile#5859 for a link to a mention in the
Flutter project about `use_frameworks!`.

So I'm hoping that the following upgrades, made here, will address
Apple's alerts:

- firebase_messaging to v14.9.0, in which that dependency gets a
  privacy manifest that declares a reason for using "user defaults
  APIs":
    https://github.com/firebase/flutterfire/releases/tag/firebase_messaging-v14.9.0

- flutter_local_notifications to v17.1.0. In v17.0.1, a "user
  defaults APIs" reason declaration was added to this dependency's
  privacy manifest:
    https://github.com/MaikuB/flutter_local_notifications/releases

Fixes: #612
  • Loading branch information
chrisbobbe authored and gnprice committed Apr 24, 2024
1 parent 0dbf69b commit 92f5dd5
Show file tree
Hide file tree
Showing 5 changed files with 131 additions and 95 deletions.
34 changes: 17 additions & 17 deletions ios/Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -37,19 +37,19 @@ PODS:
- file_picker (0.0.1):
- DKImagePickerController/PhotoGallery
- Flutter
- Firebase/CoreOnly (10.22.0):
- FirebaseCore (= 10.22.0)
- Firebase/Messaging (10.22.0):
- Firebase/CoreOnly (10.24.0):
- FirebaseCore (= 10.24.0)
- Firebase/Messaging (10.24.0):
- Firebase/CoreOnly
- FirebaseMessaging (~> 10.22.0)
- firebase_core (2.28.0):
- Firebase/CoreOnly (= 10.22.0)
- FirebaseMessaging (~> 10.24.0)
- firebase_core (2.30.1):
- Firebase/CoreOnly (= 10.24.0)
- Flutter
- firebase_messaging (14.8.0):
- Firebase/Messaging (= 10.22.0)
- firebase_messaging (14.9.0):
- Firebase/Messaging (= 10.24.0)
- firebase_core
- Flutter
- FirebaseCore (10.22.0):
- FirebaseCore (10.24.0):
- FirebaseCoreInternal (~> 10.0)
- GoogleUtilities/Environment (~> 7.12)
- GoogleUtilities/Logger (~> 7.12)
Expand All @@ -60,7 +60,7 @@ PODS:
- GoogleUtilities/Environment (~> 7.8)
- GoogleUtilities/UserDefaults (~> 7.8)
- PromisesObjC (~> 2.1)
- FirebaseMessaging (10.22.0):
- FirebaseMessaging (10.24.0):
- FirebaseCore (~> 10.0)
- FirebaseInstallations (~> 10.0)
- GoogleDataTransport (~> 9.3)
Expand Down Expand Up @@ -132,7 +132,7 @@ PODS:
- sqlite3/common
- sqlite3_flutter_libs (0.0.1):
- Flutter
- sqlite3 (~> 3.45.1)
- "sqlite3 (~> 3.45.3+1)"
- sqlite3/fts5
- sqlite3/perf-threadsafe
- sqlite3/rtree
Expand Down Expand Up @@ -209,13 +209,13 @@ SPEC CHECKSUMS:
DKImagePickerController: a7836546cfdfe014171694f643a7d575bc8ace7f
DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179
file_picker: 09aa5ec1ab24135ccd7a1621c46c84134bfd6655
Firebase: 797fd7297b7e1be954432743a0b3f90038e45a71
firebase_core: d955499180c3c8ef355adf46b8752c4c01d09e0a
firebase_messaging: 23c8eaa885a11552e45c98b7a08ba81860092883
FirebaseCore: 0326ec9b05fbed8f8716cddbf0e36894a13837f7
Firebase: 91fefd38712feb9186ea8996af6cbdef41473442
firebase_core: 7f1e1156934d0da3be260174812842df9420e4ab
firebase_messaging: 917a590db1d2f6fec494c5d9aa83c010f518c28f
FirebaseCore: 11dc8a16dfb7c5e3c3f45ba0e191a33ac4f50894
FirebaseCoreInternal: bcb5acffd4ea05e12a783ecf835f2210ce3dc6af
FirebaseInstallations: 8f581fca6478a50705d2bd2abd66d306e0f5736e
FirebaseMessaging: 9f71037fd9db3376a4caa54e5a3949d1027b4b6e
FirebaseMessaging: 4d52717dd820707cc4eadec5eb981b4832ec8d5d
Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7
flutter_local_notifications: 4cde75091f6327eb8517fa068a0a5950212d2086
GoogleDataTransport: 6c09b596d841063d76d4288cc2d2f42cc36e1e2a
Expand All @@ -229,7 +229,7 @@ SPEC CHECKSUMS:
SDWebImage: 40b0b4053e36c660a764958bff99eed16610acbb
share_plus: 8875f4f2500512ea181eef553c3e27dba5135aad
sqlite3: 02d1f07eaaa01f80a1c16b4b31dfcbb3345ee01a
sqlite3_flutter_libs: af0e8fe9bce48abddd1ffdbbf839db0302d72d80
sqlite3_flutter_libs: 9bfe005308998aeca155330bbc2ea6dddf834a3b
SwiftyGif: 706c60cf65fa2bc5ee0313beece843c8eb8194d4
url_launcher_ios: 6116280ddcfe98ab8820085d8d76ae7449447586

Expand Down
18 changes: 18 additions & 0 deletions ios/Runner.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,7 @@
9705A1C41CF9048500538489 /* Embed Frameworks */,
3B06AD1E1E4923F5004D2608 /* Thin Binary */,
CF082B7052F068E927BF3A60 /* [CP] Embed Pods Frameworks */,
85EEE45BF1E43CE258437BA2 /* [CP] Copy Pods Resources */,
);
buildRules = (
);
Expand Down Expand Up @@ -237,6 +238,23 @@
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
showEnvVarsInLog = 0;
};
85EEE45BF1E43CE258437BA2 /* [CP] Copy Pods Resources */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist",
);
name = "[CP] Copy Pods Resources";
outputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
showEnvVarsInLog = 0;
};
9740EEB61CF901F6004384FC /* Run Script */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
Expand Down
36 changes: 18 additions & 18 deletions macos/Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,20 @@ PODS:
- FlutterMacOS
- file_selector_macos (0.0.1):
- FlutterMacOS
- Firebase/CoreOnly (10.22.0):
- FirebaseCore (= 10.22.0)
- Firebase/Messaging (10.22.0):
- Firebase/CoreOnly (10.24.0):
- FirebaseCore (= 10.24.0)
- Firebase/Messaging (10.24.0):
- Firebase/CoreOnly
- FirebaseMessaging (~> 10.22.0)
- firebase_core (2.28.0):
- Firebase/CoreOnly (~> 10.22.0)
- FirebaseMessaging (~> 10.24.0)
- firebase_core (2.30.1):
- Firebase/CoreOnly (~> 10.24.0)
- FlutterMacOS
- firebase_messaging (14.8.0):
- Firebase/CoreOnly (~> 10.22.0)
- Firebase/Messaging (~> 10.22.0)
- firebase_messaging (14.9.0):
- Firebase/CoreOnly (~> 10.24.0)
- Firebase/Messaging (~> 10.24.0)
- firebase_core
- FlutterMacOS
- FirebaseCore (10.22.0):
- FirebaseCore (10.24.0):
- FirebaseCoreInternal (~> 10.0)
- GoogleUtilities/Environment (~> 7.12)
- GoogleUtilities/Logger (~> 7.12)
Expand All @@ -27,7 +27,7 @@ PODS:
- GoogleUtilities/Environment (~> 7.8)
- GoogleUtilities/UserDefaults (~> 7.8)
- PromisesObjC (~> 2.1)
- FirebaseMessaging (10.22.0):
- FirebaseMessaging (10.24.0):
- FirebaseCore (~> 10.0)
- FirebaseInstallations (~> 10.0)
- GoogleDataTransport (~> 9.3)
Expand Down Expand Up @@ -92,7 +92,7 @@ PODS:
- sqlite3/common
- sqlite3_flutter_libs (0.0.1):
- FlutterMacOS
- sqlite3 (~> 3.45.1)
- "sqlite3 (~> 3.45.3+1)"
- sqlite3/fts5
- sqlite3/perf-threadsafe
- sqlite3/rtree
Expand Down Expand Up @@ -152,13 +152,13 @@ EXTERNAL SOURCES:
SPEC CHECKSUMS:
device_info_plus: ce1b7762849d3ec103d0e0517299f2db7ad60720
file_selector_macos: 468fb6b81fac7c0e88d71317f3eec34c3b008ff9
Firebase: 797fd7297b7e1be954432743a0b3f90038e45a71
firebase_core: 2c57be44d4fb5de6757fd8ebe04e363599daef36
firebase_messaging: 6ee25816b47b604184e49b9e0c49334ebe555d06
FirebaseCore: 0326ec9b05fbed8f8716cddbf0e36894a13837f7
Firebase: 91fefd38712feb9186ea8996af6cbdef41473442
firebase_core: 59eec96207757ff60fa76232d0b0bb749f2c4b89
firebase_messaging: eb3c1afa3c6756407f2d9f22a4b6c58d50f4c9b2
FirebaseCore: 11dc8a16dfb7c5e3c3f45ba0e191a33ac4f50894
FirebaseCoreInternal: bcb5acffd4ea05e12a783ecf835f2210ce3dc6af
FirebaseInstallations: 8f581fca6478a50705d2bd2abd66d306e0f5736e
FirebaseMessaging: 9f71037fd9db3376a4caa54e5a3949d1027b4b6e
FirebaseMessaging: 4d52717dd820707cc4eadec5eb981b4832ec8d5d
flutter_local_notifications: 3805ca215b2fb7f397d78b66db91f6a747af52e4
FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24
GoogleDataTransport: 6c09b596d841063d76d4288cc2d2f42cc36e1e2a
Expand All @@ -169,7 +169,7 @@ SPEC CHECKSUMS:
PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47
share_plus: 36537c04ce0c3e3f5bd297ce4318b6d5ee5fd6cf
sqlite3: 02d1f07eaaa01f80a1c16b4b31dfcbb3345ee01a
sqlite3_flutter_libs: 06a05802529659a272beac4ee1350bfec294f386
sqlite3_flutter_libs: 8d204ef443cf0d5c1c8b058044eab53f3943a9c5
url_launcher_macos: d2691c7dd33ed713bf3544850a623080ec693d95

PODFILE CHECKSUM: 353c8bcc5d5b0994e508d035b5431cfe18c1dea7
Expand Down
18 changes: 18 additions & 0 deletions macos/Runner.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -185,6 +185,7 @@
33CC110E2044A8840003C045 /* Bundle Framework */,
3399D490228B24CF009A79C7 /* ShellScript */,
FD4A0BBCC328170C90F9011D /* [CP] Embed Pods Frameworks */,
265FD38E002254FFD08E2D83 /* [CP] Copy Pods Resources */,
);
buildRules = (
);
Expand Down Expand Up @@ -254,6 +255,23 @@
/* End PBXResourcesBuildPhase section */

/* Begin PBXShellScriptBuildPhase section */
265FD38E002254FFD08E2D83 /* [CP] Copy Pods Resources */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist",
);
name = "[CP] Copy Pods Resources";
outputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
showEnvVarsInLog = 0;
};
3399D490228B24CF009A79C7 /* ShellScript */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
Expand Down
Loading

0 comments on commit 92f5dd5

Please sign in to comment.