Closed Bug 1689348 Opened 4 years ago Closed 4 years ago

Remove non-syntactic scope support from JSExecutionContext

Categories

(Core :: JavaScript Engine, task, P3)

task

Tracking

()

RESOLVED FIXED
89 Branch
Tracking Status
firefox89 --- fixed

People

(Reporter: tcampbell, Assigned: tcampbell)

References

Details

Attachments

(1 file)

(Technically this code is in dom/base, but SpiderMonkey is more interested in the change)

The last remaining use of JSExecutionContext::SetScopeChain is in the nsPAPI plugin code which is slated for removal. Once this is done, we can remove support for non-syntactic script compilation which is being deprecated in spidermonkey.

Note that ScriptPreloader/FrameScripts continue to use non-syntactic envs, but use different loader code (and will probably be changed as well).

Note that inline event handler script still uses non-syntactic envs in future, but only with CompileFunction, while it is only global-scripts that we are deprecating.

Just in case you missed it, JSExecutionContext::SetScopeChain is now unused and could be removed. Might be nice to do soonish before it finds new uses.

Flags: needinfo?(tcampbell)

The last use of this method was the NSPAPI plugin code which has now been
removed. These non-syntactic exotic environments were used for non-standard
situations and suffered numerous performance and correctness issues so are
deprecated in general.

Assignee: nobody → tcampbell
Status: NEW → ASSIGNED
Flags: needinfo?(tcampbell)
Pushed by tcampbell@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/2f021db40245 Remove unused JSExecutionContext::SetScopeChain code. r=smaug,nbp
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 89 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: