-
Improvement
-
Resolution: Fixed
-
Major
-
4.0.0-a1, 4.0.0-a2
-
None
Safari on macOS and iOS imposes strict limits on push notification delivery and service worker behavior, particularly:
- Maximum of 3 push notifications per service worker registration.
- If not handled correctly, Safari may terminate the service worker or stop delivering pushes after 3 messages.
To address this in your push event handler, you must call event.waitUntil() and return a Promise that resolves only after all async operations are done.
This ensures Safari knows the push task is still active and prevents premature termination or throttling.
More info here: https://dev.to/progressier/how-to-fix-ios-push-subscriptions-being-terminated-after-3-notifications-39a7