Contact emails
pani...@chromium.org, fme...@chromium.org
Spec
Link to explainer: https://github.com/spanicker/device-ram
Spec: https://github.com/WICG/device-ram/blob/master/device-memory.bs
Summary
Add HTTP Client Hint header to surface device capability for memory i.e. device RAM. This is to enable web apps to customize content depending on device RAM constraints.
Motivation
Developers need “device-class” signal for:
1. Serving “light” version of the site or specific components, for low-end devices:
Serve Google "search lite" - a 10KB search results page used in EM.
Serve a light version of video player in Facebook
Serve lightweight tile images in Google Maps
2. Normalizing Metrics: analytics need to be able to normalize their metrics against the device-class. For instance, a 100ms long task on a Pixel is a more severe issue vs. on a low-end device.
Device memory is an especially useful signal for determining “device-class”. Low memory devices devices (under 512MB, 512MB - 1GB) are widely used in emerging markets.
(For details on why “Device Class” is not directly exposed, see here)
Privacy & Security
Restricting to a ceiling value (rounded to the two most significant bits - details here), as opposed to exact value, significantly mitigates fingerprinting.
As noted in Explainer device identification is already possible today based on UA string.
Requiring per-origin opt-in with Accept-CH restricts when the header is advertised.Link to “Intent to Implement” blink-dev discussion
Interoperability and Compatibility Risk
Compat risk is low. On browsers that don't support Client Hints, the header will not be sent, and developers are expected to serve the default content. The potential risk comes if developers assume the presence of this header, instead of providing graceful fallback. We've provided guidance in the explainer to help avoid this.
Interop risk: medium.
Edge: Positive signal (public-web-perf meeting agenda - doc comments)
Firefox: No signals
Safari: No signals
Web developers: Positive (positive signals from Facebook, Google Search, Google Maps, Youtube, Akamai, etc.)
Ongoing technical constraints
None
Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?
Yes.
Is this feature fully tested by web-platform-tests?
Layout tests not yet upstreamed
Chromium issue to upstream some existing tests
OWP launch tracking bug
https://bugs.chromium.org/p/chromium/issues/detail?id=710702
Link to entry on the feature dashboard
https://www.chromestatus.com/feature/5741299856572416
Requesting approval to ship?
Yes
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAK7ODi_Z0fovkLAAgG-on8GgxBuecdNEVtcvi6QaEQ69HEvu0g%40mail.gmail.com.
/cc Todd on the Edge team who said: "We are supportive of this proposal" (just to ensure he's aware of the intent).Here's a working spec link: https://rawgit.com/WICG/device-ram/master/device-memory.html (filed a bug)This is just about the header, not the JS API - right? Is there a reason to want to ship the header first ahead of having a JS API? IIRC all other Client-Hints are for things that can also be determined by JavaScript (which is why they are "hints", not just brand new APIs)?
On Fri, Jul 14, 2017 at 10:39 AM, Rick Byers <rby...@chromium.org> wrote:/cc Todd on the Edge team who said: "We are supportive of this proposal" (just to ensure he's aware of the intent).Here's a working spec link: https://rawgit.com/WICG/device-ram/master/device-memory.html (filed a bug)
Ilya, could you chime in on whether Client Hints has a requirement for JS API, I thought these were fairly independent.
On Fri, Jul 14, 2017 at 4:00 PM, Shubhie Panicker <pani...@google.com> wrote:Ilya, could you chime in on whether Client Hints has a requirement for JS API, I thought these were fairly independent.They're independent. Generally speaking, I think it's a best practice to expose both (and ideally at the same time), but it sounds like we're planning to followup with the JS implementation in the next release.. So, no objections from me here.As an aside, perhaps we should update the spec to reflect that we're also planning to expose this data to JS?
Thanks for CCing me, Rick!
I am generally supportive of investment in this area.
-Todd
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/MWHPR21MB0158E761715EC2CC1E5333BCC2A60%40MWHPR21MB0158.namprd21.prod.outlook.com.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOtFfx6g-uqQ4dKfPf2vmRctJ%2BrTuQ3XKiKVSpg%3DYM%2BpWw3AKA%40mail.gmail.com.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOtFfx6g-uqQ4dKfPf2vmRctJ%2BrTuQ3XKiKVSpg%3DYM%2BpWw3AKA%40mail.gmail.com.
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw9HgbUKMH0On3nyKw_9hoTH0JEOMM8JTEO4k8DZntmS6g%40mail.gmail.com.
would it make sense to restrict this feature to secure connections?
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
--To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOtFfx6g-uqQ4dKfPf2vmRctJ%2BrTuQ3XKiKVSpg%3DYM%2BpWw3AKA%40mail.gmail.com.
You received this message because you are subscribed to the Google Groups "blink-dev" group.
On Fri, Jul 21, 2017 at 2:05 AM, Jochen Eisinger <joc...@chromium.org> wrote:would it make sense to restrict this feature to secure connections?Yes this totally makes sense to me for Client Hints. (It would be too confusing if this is Device Memory only, but not any other Client Hints)Per Ilya, the breakage for existing Client Hints should be relatively low. Can we ship a change now to update Client Hints to trigger for HTTPS-only? What's the recommended process?
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
--To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOtFfx6g-uqQ4dKfPf2vmRctJ%2BrTuQ3XKiKVSpg%3DYM%2BpWw3AKA%40mail.gmail.com.
You received this message because you are subscribed to the Google Groups "blink-dev" group.
sgtm, thx!
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.
--To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOtFfx6g-uqQ4dKfPf2vmRctJ%2BrTuQ3XKiKVSpg%3DYM%2BpWw3AKA%40mail.gmail.com.
You received this message because you are subscribed to the Google Groups "blink-dev" group.
SGTM.Ilya - could you file relevant spec & crbugs? Thanks.