LGTM3
/Daniel
On 2025-04-23 17:08, Yoav Weiss (@Shopify) wrote:
LGTM2
Thanks for sending the PR. Please make sure it lands, but it's not a
blocker for shipping IMO.
On Tuesday, April 22, 2025 at 11:56:27 AM UTC+2 Antonio Sartori wrote:
Makes sense. I created a PR here
https://github.com/w3c/push-api/pull/400
<https://github.com/w3c/push-api/pull/400>.
On Tue, Apr 22, 2025 at 11:32 AM Domenic Denicola
<dome...@chromium.org> wrote:
Sure, those values are in the possible value space. But it'd
be good to see some text that explicitly fires an event with
them both set to null. Right now no spec text does so, and
thus it wouldn't be spec-conformant to fire such an event.
(Just like there's no spec text for firing a hashchange event
with oldURL = newURL = "asdf", even though that's in the value
space of USVString.)
On Tue, Apr 22, 2025 at 6:24 PM Antonio Sartori
<antoniosart...@chromium.org> wrote:
(However, the spec does seem to allow both oldSubscription
and newSubscription to be null, at least that is what I
would read out of
https://w3c.github.io/push-api/#pushsubscriptionchangeeventinit-interface
<https://w3c.github.io/push-api/#pushsubscriptionchangeeventinit-interface>)
On Tue, Apr 22, 2025 at 11:17 AM Antonio Sartori
<antoniosart...@google.com> wrote:
That is correct, the spec never explicitly fires a
pushsubscriptionchange event with "empty
oldSubscription and newSubscription". The spec
mandates ("MUST") firing the event on a subscription
refresh (which chrome never does). In the security and
privacy considerations, it allows ("MAY") firing the
event on a permission revocation (When a permission is
revoked, the user agent MAY fire the
"pushsubscriptionchange" event).
I was reading the explanation of the event itself:
"The pushsubscriptionchange event indicates a change
in a push subscription that was triggered outside of
the application's control, for example because it has
been refreshed, revoked or lost."
together with the fact that the permission change
happens outside of the application's control, as a
justification for triggering the event. But I agree
that this is probably stretching the interpretation a
bit. I will try to explore clarifying this in the spec.
On Tue, Apr 22, 2025 at 11:07 AM Domenic Denicola
<dome...@chromium.org> wrote:
On Thursday, April 17, 2025 at 5:44:29 PM UTC+9
Chromestatus wrote:
Contact emails antoniosart...@chromium.org
Explainer None
Specification
https://w3c.github.io/push-api/#the-pushsubscriptionchange-event
<https://w3c.github.io/push-api/#the-pushsubscriptionchange-event>
Summary
Fire the pushsubscriptionchange event in
service workers when an origin for which a
push subscription existed in the past, but
which was revoked because of a permission
change (from granted to deny/default), is
re-granted notification permission. The event
will be fired with an empty oldSubscription
and newSubscription.
I can't find any spec text that ever fires a
pushsubscriptionchange event with "empty
oldSubscription and newSubscription". (Does that
mean null? Or is there a special concept of an
empty `PushSubscription` object?)
Can you help explain me find where this behavior
is specified?
Blink component Blink>PushAPI
<https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EPushAPI%22>
TAG review None
TAG review status Not applicable
Risks
Interoperability and Compatibility
None
/Gecko/: Shipped/Shipping
(https://bugzilla.mozilla.org/show_bug.cgi?id=1497429
<https://bugzilla.mozilla.org/show_bug.cgi?id=1497429>)
Firefox seems to already implement a similar
behavior, see
https://bugzilla.mozilla.org/show_bug.cgi?id=1497429
<https://bugzilla.mozilla.org/show_bug.cgi?id=1497429>
/WebKit/: No signal Seems shipped, but
couldn't figure out the exact details. See
https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerGlobalScope/pushsubscriptionchange_event
<https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerGlobalScope/pushsubscriptionchange_event>
/Web developers/: No signals Likely positive,
see for example
https://issues.chromium.org/issues/40129474
<https://issues.chromium.org/issues/40129474>
/Other signals/:
WebView application risks
Does this intent deprecate or change behavior
of existing APIs, such that it has potentially
high risk for Android WebView-based applications?
None
Debuggability
None
Will this feature be supported on all six
Blink platforms (Windows, Mac, Linux,
ChromeOS, Android, and Android WebView)? No
Is this feature fully tested by
web-platform-tests
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?
No
Flag name on about://flags None
Finch feature name
PushSubscriptionChangeEventOnResubscribe
Rollout plan Will ship enabled for all users
Requires code in //chrome? False
Tracking bug
https://issues.chromium.org/issues/407523313
<https://issues.chromium.org/issues/407523313>
Launch bug
https://launch.corp.google.com/launch/4390563
<https://launch.corp.google.com/launch/4390563>
Estimated milestones Shipping on desktop 137
Shipping on Android 137
Anticipated spec changes
Open questions about a feature may be a source
of future web compat or interop issues. Please
list open issues (e.g. links to known github
issues in the project for the feature
specification) whose resolution may introduce
web compat/interop risk (e.g., changing to
naming or structure of the API in a
non-backward-compatible way).
None
Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5147683423256576?gate=5097638464323584
<https://chromestatus.com/feature/5147683423256576?gate=5097638464323584>
Links to previous Intent discussions Intent to
Prototype:
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOzWxF6xvYb-0qkPaZbhNFuS86__DEg8curFPGRtuDak8x%3D31g%40mail.gmail.com
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOzWxF6xvYb-0qkPaZbhNFuS86__DEg8curFPGRtuDak8x%3D31g%40mail.gmail.com>
This intent message was generated by Chrome
Platform Status <https://chromestatus.com>.
--
You received this message because you are subscribed to the Google
Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to blink-dev+unsubscr...@chromium.org.
To view this discussion visit
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/055b7d47-4e6a-46e2-8443-3f5aeac973dcn%40chromium.org
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/055b7d47-4e6a-46e2-8443-3f5aeac973dcn%40chromium.org?utm_medium=email&utm_source=footer>.
--
You received this message because you are subscribed to the Google Groups
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to blink-dev+unsubscr...@chromium.org.
To view this discussion visit
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/78681c8c-bd93-4ad6-92d7-5afa4fd506d7%40gmail.com.