Bug 223883

Summary: Remove [Replaceable] extended attribute from `document.all`
Product: WebKit Reporter: Alexey Shvayka <shvaikalesh>
Component: DOMAssignee: Alexey Shvayka <shvaikalesh>
Status: RESOLVED FIXED    
Severity: Trivial CC: cdumez, darin, esprehn+autocc, ews-watchlist, kangil.han, kondapallykalyan, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: All   
OS: All   
Attachments:
Description Flags
Patch darin: review+

Description Alexey Shvayka 2021-03-29 10:28:43 PDT
Remove [Replaceable] extended attribute from `document.all`
Comment 1 Alexey Shvayka 2021-03-29 10:32:46 PDT
Created attachment 424543 [details]
Patch
Comment 2 Darin Adler 2021-03-29 11:07:55 PDT
Comment on attachment 424543 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=424543&action=review

> Source/WebCore/ChangeLog:13
> +        iOS apps should be unaffected as they were authored long after `document.all` time.

What you mean is:

- iOS apps are unlikely to accidentally depend on subtleties in document.all behavior since they were authored long after there was a need,

But this ignores the likelihood that these apps may include very old versions of libraries originally designed for the web. I am optimistic this will not be the case, but I don’t know that we can confidently state that.
Comment 3 Alexey Shvayka 2021-04-02 15:24:25 PDT
Committed r275445 (236106@main): <https://commits.webkit.org/236106@main>
Comment 4 Alexey Shvayka 2021-04-02 15:24:38 PDT
(In reply to Darin Adler from comment #2)

I appreciate the review!

> What you mean is:
> 
> - iOS apps are unlikely to accidentally depend on subtleties in document.all
> behavior since they were authored long after there was a need,

Right, I've tweaked the wording.

> But this ignores the likelihood that these apps may include very old
> versions of libraries originally designed for the web. I am optimistic this
> will not be the case, but I don’t know that we can confidently state that.

I am pretty sure we can state that: `document.all` was introduced in IE4 as a regular IDL attribute; it was never replaceable.
For a legacy web library to be cross-browser, it couldn't depend on `document.all` being reassignable. Updated ChangeLog to mention this.
Comment 5 Radar WebKit Bug Importer 2021-04-02 15:26:29 PDT
<rdar://problem/76167832>