Yes, debug(nativeFunction) is invaluable when you want to understand what
causes a JavaScript-induced navigation. :)
(Unfortunately, understanding that a simple link caused the navigation is
harder)

☆*PhistucK*


On Wed, May 17, 2023 at 5:39 PM Philip Jägenstedt <foo...@chromium.org>
wrote:

> Thanks PhistucK, I didn't know about these devtools tricks :D
>
> On Wed, May 17, 2023 at 6:31 PM PhistucK <phist...@gmail.com> wrote:
>
>> Excessive, but you can run this in the console -
>> debug(URLSearchParams.prototype.has)
>> debug(URLSearchParams.prototype.delete)
>> That will break whenever those are called.
>> If you want it to break less, you can replace the functions with your own
>> and run debugger; in case there is more than one parameter -
>> var originalHas = URLSearchParams.prototype.has;
>> URLSearchParams.prototype.has = (...a) => { if (a.length > 1) debugger;
>> return originalHas.call(this, ...a); }
>> var originalDelete = URLSearchParams.prototype.delete;
>> URLSearchParams.prototype.delete = (...a) => { if (a.length > 1)
>> debugger; return originalDelete.call(this, ...a); }
>> But make sure you run this very early on the page somehow.
>>
>> ☆*PhistucK*
>>
>>
>> On Wed, May 17, 2023 at 5:17 PM Philip Jägenstedt <foo...@chromium.org>
>> wrote:
>>
>>> Hi Debadree, minified code is OK, all we need to see is what the call
>>> site looks like. In particular is it an explicit and intentional extra arg
>>> like `someUrl.searchParams.delete('something', extraArg)`, or is it a
>>> callback involving forEach or similar?
>>>
>>> With some way to break in devtools at the code path in question, it
>>> should be a question of stepping up the call stack one level. The most
>>> straightforward way to do this would be a local change to Chromium, to make
>>> the methods throw an exception if given and extra argument, and then
>>> looking for the exception in devtools.
>>>
>>> Does that sound workable? If it's unreasonably hard to do, then we need
>>> some other way to understand what the usage in the wild is about.
>>>
>>> On Wed, May 17, 2023 at 5:27 PM Debadree Chatterjee <
>>> debadree...@gmail.com> wrote:
>>>
>>>> Hey Everyone!
>>>>
>>>> I am writing to seek some help regarding identifying code patterns as
>>>> you say, almost all the code in these sites seems to be minified compacted
>>>> so quite difficult to find manually does anyone know a better way to go
>>>> about it? like is there an example of maybe modifying some code in Chrome
>>>> to detect these code patterns?
>>>>
>>>> Yours Sincerely,
>>>> Debadree
>>>> On Monday, May 15, 2023 at 10:06:05 PM UTC+5:30 PhistucK wrote:
>>>>
>>>>> It would be something like this -
>>>>>
>>>>> https://groups.google.com/a/chromium.org/g/blink-dev/c/rDaQdKpWAx8/m/qjTlRNShAgAJ
>>>>>
>>>>> ☆*PhistucK*
>>>>>
>>>>>
>>>>> On Mon, May 15, 2023 at 10:25 AM Philip Jägenstedt <
>>>>> foo...@chromium.org> wrote:
>>>>>
>>>>>> Hey Andreu,
>>>>>>
>>>>>> Can you give an example of what the code looks like that calls the
>>>>>> methods with a second argument?
>>>>>>
>>>>>> Best regards,
>>>>>> Philip
>>>>>>
>>>>>> On Fri, May 12, 2023 at 8:51 PM Andreu Botella <abot...@igalia.com>
>>>>>> wrote:
>>>>>>
>>>>>>> jornalmassa.com.br doesn't seem to be calling these methods with
>>>>>>> two arguments, at least in my testing. The rest of sites do occasionally
>>>>>>> (sometimes with the second argument being 0, sometimes a different
>>>>>>> number, sometimes a string), but none seemed to break in my testing.
>>>>>>>
>>>>>>> Andreu
>>>>>>> On 5/12/23 10:38, Philip Jägenstedt wrote:
>>>>>>>
>>>>>>> It looks like this was spec'd in
>>>>>>> https://github.com/whatwg/url/pull/735, with participation from
>>>>>>> Chromium and WebKit folks.
>>>>>>> https://bugzilla.mozilla.org/show_bug.cgi?id=1831587 was filed for
>>>>>>> Gecko, but there's no clear position. Would you mind filing an issue at
>>>>>>> https://github.com/mozilla/standards-positions/issues/new to ensure
>>>>>>> Mozilla is aware this happening?
>>>>>>>
>>>>>>> https://chromestatus.com/metrics/feature/timeline/popularity/4478
>>>>>>> is pretty low, but was any analysis done of sites that reach this use
>>>>>>> counter? It's honestly higher usage than I'd expect for an argument that
>>>>>>> didn't do anything before, so likely the value passed doesn't make sense
>>>>>>> and will result in the parameter not being deleted for delete(), which
>>>>>>> could be a problem. What can you say about usage in the wild here?
>>>>>>>
>>>>>>> +Andreu Botella
>>>>>>>
>>>>>>> On Fri, May 12, 2023 at 9:30 AM Debadree Chatterjee <
>>>>>>> debad...@gmail.com> wrote:
>>>>>>>
>>>>>>>> Contact emails debad...@gmail.com
>>>>>>>>
>>>>>>>> Explainer None
>>>>>>>>
>>>>>>>> Specification https://url.spec.whatwg.org/#dom-urlsearchparams-has
>>>>>>>>
>>>>>>>> Summary
>>>>>>>>
>>>>>>>> This feature adds the ability to pass a `value` argument to
>>>>>>>> URLSearchParams's has() and delete() methods which allow for deleting
>>>>>>>> tuples stored in URLSearchParams either by the `name` parameter or by 
>>>>>>>> the
>>>>>>>> combination of `name` and `value`
>>>>>>>>
>>>>>>>>
>>>>>>>> Blink component Blink
>>>>>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink>
>>>>>>>>
>>>>>>>> TAG review None
>>>>>>>>
>>>>>>>> TAG review status Not applicable
>>>>>>>>
>>>>>>>> Risks
>>>>>>>>
>>>>>>>>
>>>>>>>> Interoperability and Compatibility Compatibility with existing
>>>>>>>> websites were tested by means of a Counter in chromium, ref:
>>>>>>>> https://github.com/whatwg/url/pull/735#issuecomment-1441503315 and
>>>>>>>> no significant chances of breaking were found
>>>>>>>>
>>>>>>>> *Gecko*: No signal
>>>>>>>>
>>>>>>>> *WebKit*: No signal
>>>>>>>>
>>>>>>>> *Web developers*: Has Shipped (
>>>>>>>> https://github.com/WebKit/WebKit/pull/13500)
>>>>>>>>
>>>>>>>> *Other signals*:
>>>>>>>>
>>>>>>>> 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?
>>>>>>>>
>>>>>>>> None expected
>>>>>>>>
>>>>>>>>
>>>>>>>> Debuggability 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
>>>>>>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>>>>>>>> ?
>>>>>>>> Yes
>>>>>>>>
>>>>>>>> Flag name
>>>>>>>>
>>>>>>>> Requires code in //chrome? False
>>>>>>>>
>>>>>>>> Tracking bug
>>>>>>>> https://bugs.chromium.org/p/chromium/issues/detail?id=1442916
>>>>>>>>
>>>>>>>> Estimated milestones
>>>>>>>>
>>>>>>>> No milestones specified
>>>>>>>>
>>>>>>>>
>>>>>>>> Anticipated spec changes
>>>>>>>>
>>>>>>>> Open questions about a feature may be a source of future web compat
>>>>>>>> or interop issues. Please list open issues (e.g. links to known github
>>>>>>>> issues in the project for the feature specification) whose resolution 
>>>>>>>> may
>>>>>>>> introduce web compat/interop risk (e.g., changing to naming or 
>>>>>>>> structure of
>>>>>>>> the API in a non-backward-compatible way).
>>>>>>>> None Expected
>>>>>>>>
>>>>>>>> Link to entry on the Chrome Platform Status
>>>>>>>> https://chromestatus.com/feature/5147732899004416
>>>>>>>>
>>>>>>>> Links to previous Intent discussions Intent to prototype:
>>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CFBE060E-9D1C-4B8D-A4FB-B0279D73E6F4%40gmail.com
>>>>>>>>
>>>>>>>> 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+...@chromium.org.
>>>>>>>> To view this discussion on the web visit
>>>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/A73025EA-70D7-4818-9CFF-AE14B48875F0%40gmail.com
>>>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/A73025EA-70D7-4818-9CFF-AE14B48875F0%40gmail.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+...@chromium.org.
>>>>>>
>>>>> To view this discussion on the web visit
>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAARdPYcgT4HVYsB3tsDEpA%2B4-niBhZv5Op-ztxCi-Ae9mdAzdQ%40mail.gmail.com
>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAARdPYcgT4HVYsB3tsDEpA%2B4-niBhZv5Op-ztxCi-Ae9mdAzdQ%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/CABc02_%2Bv%3DQ_oAYpZkoecaH84A%2BXogh2iq8y8XzdT3T7hLZxScA%40mail.gmail.com.

Reply via email to