Ready for Trial: PWA manifest unique id - desktop

98 views
Skip to first unread message

Phillis Tang

unread,
Sep 9, 2021, 4:37:59 PM9/9/21
to blin...@chromium.org, pwa...@chromium.org

Contact emails

phi...@chromium.orgpwa...@chromium.org

Explainer

https://github.com/philloooo/pwa-unique-id/blob/main/explainer.md

Specification

https://github.com/w3c/manifest/pull/988

Design docs


https://docs.google.com/document/d/1f9xQR1msTxiYvzFguKMkqSfrXMo_cT2yvhCEM3SYIt0/edit?usp=sharing

Summary

Define an optional id field in the app manifest that's used to globally identify the web app. If the id is not specified, start_url will be used as the default id.



Blink component

Blink

TAG review

https://github.com/w3ctag/design-reviews/issues/668

TAG review status

Pending

Risks



Interoperability and Compatibility

Low interoperability & compatibility risks: For browsers that do not implement it yet, a web app that specifies the id field will just be ignored and function as normal. The only behavior difference is the app can update its start_url when it has id specified on Chrome but not on other browsers.



Gecko: No signal (https://github.com/mozilla/standards-positions/issues/559)

WebKit: No signal (https://lists.webkit.org/pipermail/webkit-dev/2021-August/031949.html)

Web developers: Positive (https://github.com/w3c/manifest/pull/988) manfest spec editors marcoscaceres overall agrees to the change

Ergonomics

None



Activation

The feature will go together with UX changes in devtool and lighthouse to instruct users. A devrel post will also be created to inform developers about the new feature.



Security

https://docs.google.com/document/d/1-BaZAhM3eSh9CP8h8Q_OEV4gsZ9aJ46fl2ef5XeSmcg/edit?usp=sharing



Goals for experimentation

Test it function as expected. We plan to skip Intent to Experiment and move to Intent to Ship after DevTrial, as it's a single string field in the manifest that doesn't provide functional change to users and we don't expect to get useful feedback about API shape.

Ongoing technical constraints



Debuggability

The raw manifest json can be viewed in devtools->Application->Manifest. The compuated app id can be viewed in devtools->Application->Identity-> App Id



Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?

No

Currently only Windows, Linux, Mac, Chrome OS Android implementation is done in a different timeline, and planned to be done on 2022 Q1.



Is this feature fully tested by web-platform-tests?

Manual tests are written, currently under review https://github.com/web-platform-tests/wpt/pull/30409

DevTrial instructions

https://github.com/philloooo/pwa-unique-id/blob/main/HOWTO.md

Flag name

WebAppEnableManifestId

Requires code in //chrome?

False

Tracking bug

https://bugs.chromium.org/p/chromium/issues/detail?id=1182363

Launch bug

https://bugs.chromium.org/p/chromium/issues/detail?id=1182361

Estimated milestones

DevTrial on desktop94


Link to entry on the Chrome Platform Status

https://www.chromestatus.com/feature/6064014410907648

Links to previous Intent discussions

Intent to prototype: https://groups.google.com/u/1/a/chromium.org/g/blink-dev/c/hlxPHfg9GRc/m/M1jbEffUBQAJ


This intent message was generated by Chrome Platform Status.

Michael Landry

unread,
Sep 30, 2021, 2:51:02 PM9/30/21
to blink-dev, Phillis Tang, pwa...@chromium.org
This is an extremely useful feature for Google Chat, and Workspace in general. PWA path migration has been a barrier in the past and having the flexibility to seamlessly update the manifest without changing the app identity will be needed in the future. In my local testing I can confirm this works as expected!
Reply all
Reply to author
Forward
0 new messages