LGTM1 I agree this is close enough to HID.forget() to not require a full-fledged TAG review, but maybe add a comment on the HID review letting them know that you plan to apply the same pattern to USB?
On Wed, Feb 23, 2022 at 8:35 AM 'François Beaufort 🇫🇷' via blink-dev < [email protected]> wrote: > Contact emails > > [email protected] > > [email protected] > > Explainer > > N/A > > Specification > > https://wicg.github.io/webusb/#ref-for-dom-usbdevice-forget > > https://github.com/WICG/webusb/pull/214 > > Summary > > Following the recent HIDDevice forget() addition[1] to the web platform, > the USBDevice forget() method allows web developers to voluntarily revoke a > permission to a USBDevice that was granted by a user. > > [1] https://groups.google.com/a/chromium.org/g/blink-dev/c/Fk-IJF63UWc > > Blink component > > Blink>USB > <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EUSB> > > Motivation > > Some sites may not be interested in retaining long-term permissions to > access a USB device. For example, for an educational web application used > on a shared computer with many devices, a large number of accumulated > user-generated permissions creates a poor user experience. > In addition to user agent mitigations to avoid this problem, such as > defaulting to a session scoped permission on the first request or expiring > infrequently used permissions, it should be possible for the site itself to > clean up user-generated permissions it is no longer interested in retaining. > > // Request a USB device. > > const device = await navigator.usb.requestDevice({ filters: [] }); > > // Then later... revoke permission to the USB device. > > await device.forget(); > > We expect similar functionality to Web Bluetooth and the Serial API to be > added. > > TAG review > > Following recent HIDDevice forget() approval [1], a new TAG review does > not seem necessary. > > [1] https://github.com/w3ctag/design-reviews/issues/703 > > TAG review status > > N/A > > Risks > Interoperability and Compatibility > > This small addition to the USBDevice object does not change the overall > status of WebUSB interoperability or compatibility. > > Signals from other implementations (Gecko, WebKit): > > Gecko: No Signal [1] > > WebKit: No Signal [1] > > Web / Framework developers: Positive > https://github.com/WICG/webusb/issues/107 > > [1] Both Gecko and WebKit are unlikely to object to this feature > specifically, but object to the overall WebUSB API as a whole, hence it > doesn't make sense to bug them with specific questions on this. > > Activation: > > This feature can't be polyfilled. It should be fairly trivial for > developers to adopt this new feature. > > Debuggability > > No specific DevTools changes are required. This feature is treated like > any other JS method. > > Note that exposing DevTools debugging support for device-access APIs > (WebUSB included) is discussed at > https://bugs.chromium.org/p/chromium/issues/detail?id=1142566. > > Is this feature fully tested by web-platform-tests > <https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md> > ? > > No, because permission storage is implemented outside of Blink and so > isn’t testable by web-platform-tests. Some tests that only verify the > presence of interfaces and attributes will be available at > https://wpt.fyi/results/webusb <https://wpt.fyi/results/webhid> though. > I’ll also add manual tests. > > Requires code in //chrome? > > Yes, permission storage is implemented in //chrome. > > Tracking bug > > https://bugs.chromium.org/p/chromium/issues/detail?id=1299351 > > Estimated milestones > > 101 > > Link to entry on the Chrome Platform Status > > https://chromestatus.com/feature/5640127995969536 > > > > > > -- > 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 [email protected]. > To view this discussion on the web visit > https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPpwU5KgNO-kK%3DS-d_X-FxL3AvKmAmEC99%2B67vzxZgRmv2Bt3A%40mail.gmail.com > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPpwU5KgNO-kK%3DS-d_X-FxL3AvKmAmEC99%2B67vzxZgRmv2Bt3A%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 [email protected]. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfXPaCykgNW5ncgJT%3D9kNgXVMOpNjS%2BPsTF3EmrDgzrTQQ%40mail.gmail.com.
