When I upload my app for TestFlight I get the warning email about a missing push notification entitlement. I don't use push notifications in my app and I don't want to add the entitlement just to remove the warning without knowing what's causing it.
I assume it must be in a library I'm using. How would I check this? I've googled around and haven't found a good way to find out.
grep "registerForRemoteNotificationTypes" -R .
grep "resgisterUserNotificationSettings" -R .
Did some digging on Apple's notification dev page and came up with the following grep:
grep "application:didRegisterForRemoteNotificationsWithDeviceToken:" -R Pods/
Got hits in Firebase Analytics and Firebase InstanceID binary files. So even though I'm not using Firebase messaging it looks like Firebase/Core and Firebase/Analytics use push notifications.
So to answer my own question:
Grep for "Notification" in your Pod folder and narrow down the search from there. But do be careful not to get mislead doing this. As stated here:
Note: Push notifications have no functional connection to broadcast notifications or key-value observing notifications.