On Wed, Feb 26, 2025 at 11:32 AM Chris Harrelson <chris...@chromium.org> wrote:
> > > On Tue, Feb 25, 2025 at 11:16 PM Domenic Denicola <dome...@chromium.org> > wrote: > >> Hi all, >> >> I randomly discovered today that we forgot to remove one property as part >> of this deprecation and removal. We successfully removed NavigateEvent's >> transitionWhile() (replaced with intercept()), but did not remove the >> property canTransition (replaced with canIntercept). >> >> The percentage of page loads using the navigation API >> <https://chromestatus.com/metrics/feature/timeline/popularity/4056> has >> certainly grown since this Intent was sent (now between 0.1-0.2%). However, >> I'm hopeful nobody is using canTransition. It's not documented anywhere, >> whereas canIntercept is. I did some GitHub code searches (e.canTransition >> <https://github.com/search?q=%2Fe%5C.canTransition%2F+language%3AJavaScript&type=code>, >> event.canTransition >> <https://github.com/search?q=%2Fevent%5C.canTransition%2F+language%3AJavaScript&type=code>, >> and a much-noisier canTransition >> <https://github.com/search?q=%2FcanTransition%2F+language%3AJavaScript&type=code>) >> and didn't find anything that would break: there was one case where it was >> being logged informationally, and a couple other cases where it was being >> used alongside transitionWhile(). Since transitionWhile() does not exist >> anymore, such code is already broken and thus likely not being used in the >> wild. >> >> Which path of action would the API owners prefer? >> >> - Immediately disable canTransition, with a Finch flag to reenable it >> if that breaks something, based on the approval of this intent. >> >> > I'm supportive of immediately disabling, to minimize the chance we won't > be able to remove it later in case usage increases. > +1 (with a finch flag) > > >> >> - Add use counters and UKM, and wait for them to reach stable. Then, >> assuming all looks good, send a second Intent to Remove. >> >> >> On Wednesday, June 29, 2022 at 11:47:58 PM UTC+9 Mike West wrote: >> >>> LGTM3. >>> >>> -mike >>> >>> >>> On Wed, Jun 22, 2022 at 6:57 PM Mike Taylor <miketa...@chromium.org> >>> wrote: >>> >>>> LGTM2 >>>> >>>> On 6/22/22 12:24 PM, Chris Harrelson wrote: >>>> >>>> LGTM1 >>>> >>>> On Tue, Jun 14, 2022 at 11:25 AM Nate Chapin <jap...@chromium.org> >>>> wrote: >>>> >>>>> Contact emails >>>>> >>>>> jap...@chromium.org, dome...@chromium.org >>>>> >>>>> Specification >>>>> >>>>> https://github.com/WICG/navigation-api/pull/235 >>>>> >>>>> Summary >>>>> >>>>> transitionWhile() is being replaced by navigateEvent.intercept() due >>>>> to design flaws reported by developers. >>>>> >>>>> The flaws in transitionWhile() were discussed in >>>>> https://github.com/WICG/navigation-api/issues/230, >>>>> >>>>> the spec update to replace transitionWhile() with intercept() is at >>>>> https://github.com/WICG/navigation-api/pull/235, and the introduction >>>>> of intercept() has its own chromestatus entry at >>>>> https://chromestatus.com/feature/5194055716700160. >>>>> >>>>> >>>>> Blink component >>>>> >>>>> Blink>History >>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EHistory> >>>>> >>>>> Motivation >>>>> >>>>> transitionWhile() has design issues that have meant developers have >>>>> found it difficult to use effectively, detailed in >>>>> https://github.com/WICG/navigation-api/issues/230#issuecomment-1137891972 >>>>> >>>>> intercept() is being introduced to provide a more usable API for the >>>>> same basic functionality of transitionWhile(). >>>>> >>>>> >>>>> Initial public proposal >>>>> >>>>> https://github.com/WICG/navigation-api/pull/235 >>>>> >>>>> TAG review >>>>> >>>>> https://github.com/w3ctag/design-reviews/issues/717 >>>>> >>>>> TAG review status >>>>> >>>>> Issues open >>>>> >>>>> Risks >>>>> >>>>> Interoperability and Compatibility >>>>> >>>>> For those migrating to intercept(), the main risk is that web >>>>> developer "handling" logic will run at a subtly different time, but per >>>>> the >>>>> explainer that time will actually be less buggy in the usual case. >>>>> >>>>> Also, transitionWhile() only recently shipped (M102). There are few >>>>> consumers of the API, and we are in contact with most of them already, so >>>>> we believe we can guide them on any migration challenges they might have. >>>>> >>>>> The overall use counter for the navigation API ( >>>>> https://chromestatus.com/metrics/feature/timeline/popularity/4056) >>>>> shows 0.000097% of pages on the web using any portion of the API, which >>>>> provides an upper bound on the potential breakage here. (That use counter >>>>> also counts various other entry points to the API, which are not being >>>>> changed.) >>>>> >>>>> We plan to support both intercept() and transitionWhile() for 3 >>>>> releases to provide a migration period (adding intercept() in M105, >>>>> removing transitionWhile() in M108). >>>>> >>>>> >>>>> Gecko: No signal >>>>> https://github.com/mozilla/standards-positions/issues/543 remains >>>>> open as the positions request for the original API. >>>>> >>>>> WebKit: No signal >>>>> https://www.mail-archive.com/webkit-dev@lists.webkit.org/msg30257.html >>>>> remains open as the positions request for the original API. >>>>> >>>>> Web developers: Positive The problem this was solving was discovered >>>>> by a web developer in >>>>> https://github.com/WICG/navigation-api/issues/230, and has some >>>>> engagement there. >>>>> >>>>> 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? >>>>> >>>>> >>>>> Debuggability >>>>> >>>>> N/A >>>>> >>>>> >>>>> Is this feature fully tested by web-platform-tests >>>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md> >>>>> ? >>>>> >>>>> No >>>>> >>>>> >>>>> Requires code in //chrome? >>>>> >>>>> False >>>>> >>>>> Tracking bug >>>>> >>>>> https://bugs.chromium.org/p/chromium/issues/detail?id=1336000 >>>>> >>>>> Estimated milestones >>>>> >>>>> Deprecate: M105. Remove: M108. >>>>> >>>>> >>>>> Link to entry on the Chrome Platform Status >>>>> >>>>> https://chromestatus.com/feature/5169970311856128 >>>>> >>>>> 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 on the web visit >>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CACf%3D2LJ2ErzDF1O8eo2BrsW3y9MWQ3XbcFQGJov%3Dcd5q7%3DPgCw%40mail.gmail.com >>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CACf%3D2LJ2ErzDF1O8eo2BrsW3y9MWQ3XbcFQGJov%3Dcd5q7%3DPgCw%40mail.gmail.com?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 on the web visit >>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw94z3Tb%3DMPBiG9MUszWz7art3gX1jqn3YvefG_Xwo8bMg%40mail.gmail.com >>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw94z3Tb%3DMPBiG9MUszWz7art3gX1jqn3YvefG_Xwo8bMg%40mail.gmail.com?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 on the web visit >>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/172226f9-782e-8786-b3b8-8a3229f5fcc6%40chromium.org >>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/172226f9-782e-8786-b3b8-8a3229f5fcc6%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/18443a7f-46d5-416d-a3ce-523ae5aedf41n%40chromium.org >> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/18443a7f-46d5-416d-a3ce-523ae5aedf41n%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/CAOMQ%2Bw9ewcSN9R8ZztuwuznqEMhWDeP2yo9ODWzb%3D_xso7-U_A%40mail.gmail.com > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw9ewcSN9R8ZztuwuznqEMhWDeP2yo9ODWzb%3D_xso7-U_A%40mail.gmail.com?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/CADsXd2MfRp%3DwxBHAfSo05b8xwbmnV6MHFG12exixeWYZEmSuFg%40mail.gmail.com.