New issue
Advanced search Search tips

Issue 802988 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: May 2018
Components:
EstimatedDays: ----
NextAction: 2018-05-01
OS: ----
Pri: 3
Type: Task



Sign in to add a comment

Collect data on scroll-to-fragment and encoding behavior

Project Member Reported by tkent@chromium.org, Jan 17 2018

Issue description

https://github.com/whatwg/html/pull/3111

We'd like to have data to help the following questions.
* Is percent-decode really necessary?
* Can we drop isomorphic decode?
* Can we drop weird UTF8+isomorphic decode?
* Should we support decoding by document encoding?


 

Comment 1 by tkent@chromium.org, Jan 17 2018

Description: Show this description
Project Member

Comment 2 by bugdroid1@chromium.org, Jan 18 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/dadd77a1df99121e213ab3f418fe0dfcbea6bf91

commit dadd77a1df99121e213ab3f418fe0dfcbea6bf91
Author: Kent Tamura <tkent@chromium.org>
Date: Thu Jan 18 01:36:09 2018

Add UseCounters for scroll-to-fragment and URL decoding behavior.

- url_util.*
  url::DecodeURLEscapeSequences() returns what encodings are applied
  on decoding.

- KURL.*
  Add optional DecodeURLResult argument to blink::
  DecodeURLEscapeSequences().

- web_feature.mojom, LocalFrameView.cpp, and enums.xml
  Add UseCounters.

These UseCounters are for the discussion in
https://github.com/whatwg/html/pull/3111 .

Bug:  802988 
Change-Id: Ie171212a2ca97ee5dc0e5bb4eeb98463865e5ab3
Reviewed-on: https://chromium-review.googlesource.com/869696
Reviewed-by: Mike West <mkwst@chromium.org>
Commit-Queue: Kent Tamura <tkent@chromium.org>
Cr-Commit-Position: refs/heads/master@{#530004}
[modify] https://crrev.com/dadd77a1df99121e213ab3f418fe0dfcbea6bf91/third_party/WebKit/Source/core/frame/LocalFrameView.cpp
[modify] https://crrev.com/dadd77a1df99121e213ab3f418fe0dfcbea6bf91/third_party/WebKit/Source/platform/weborigin/KURL.cpp
[modify] https://crrev.com/dadd77a1df99121e213ab3f418fe0dfcbea6bf91/third_party/WebKit/Source/platform/weborigin/KURL.h
[modify] https://crrev.com/dadd77a1df99121e213ab3f418fe0dfcbea6bf91/third_party/WebKit/public/platform/web_feature.mojom
[modify] https://crrev.com/dadd77a1df99121e213ab3f418fe0dfcbea6bf91/tools/metrics/histograms/enums.xml
[modify] https://crrev.com/dadd77a1df99121e213ab3f418fe0dfcbea6bf91/url/url_util.cc
[modify] https://crrev.com/dadd77a1df99121e213ab3f418fe0dfcbea6bf91/url/url_util.h
[modify] https://crrev.com/dadd77a1df99121e213ab3f418fe0dfcbea6bf91/url/url_util_unittest.cc

Comment 3 by tkent@chromium.org, Jan 18 2018

NextAction: 2018-03-20

Comment 4 by tkent@chromium.org, Jan 18 2018

Labels: M-65

Comment 5 by tkent@chromium.org, Jan 30 2018

NextAction: 2018-04-24
Nico found the counting code was incorrect, and he fixed it.  M65 would have incorrect data.

Comment 6 by tkent@chromium.org, Feb 26 2018

Labels: -M-65 M-66
The NextAction date has arrived: 2018-04-24

Comment 8 by tkent@chromium.org, Apr 25 2018

NextAction: 2018-05-01
M66 isn't pushed to 100% clients yet.

The NextAction date has arrived: 2018-05-01

Comment 10 by tkent@chromium.org, May 16 2018

Status: Fixed (was: Started)
Currently data/graphs in chromestatus.com are broken. Data from the internal source:

ScrollToFragmentRequested: 30.78%
ScrollToFragmentSucceedWithRaw:   6.490%
ScrollToFragmentSucceedWithASCII: 0.009423%
ScrollToFragmentSucceedWithUTF8:  0.01023%
ScrollToFragmentSucceedWithIsomorphic: 0.001333%
ScrollToFragmentSucceedWithMixed: 0.001326%
ScrollToFragmentFailWithASCII: 27.95%
ScrollToFragmentFailWithUTF8: 1.425%
ScrollToFragmentFailWithIsomorphic: 0.2417%
ScrollToFragmentFailWithMixed: 0.2415%

Note:
 * These numbers are ratio on page views.
 * Our current code tries to find a raw fragment string without percent-decoding first.
  It succeeds in 6.490% page views.
 * Percent-decoding + UTF-8 decoding covers 0.01965% page views (SucceedWithASCII + SucceedWithUTF8).
 * Isomorphic decoding and Chrome-specific quirky decoding are not helpful.

Sign in to add a comment