Open Bug 2003970 Opened 8 hours ago

Add an empty implementation of Promise.allKeyed and Promise.allSettledKeyed

Categories

(Core :: JavaScript Engine, task, P3)

task

Tracking

()

People

(Reporter: arai, Unassigned)

References

(Blocks 1 open bug)

Details

The step (2) in bug 2003342.

Things to do:

  1. Copy Promise_static_all to two new functions, for allKeyed and allSettledKeyed:
    * The functions just throws "not yet implemented" with JS_ReportErrorASCII.
    * The definitions should be behind the NIGHTLY_BUILD
    * The functions should have a spec section comment
  2. Add the property definition of allKeyed and allSettledKeyed to the Promise constructor's property spec promise_static_methods
    • This should also be behind the NIGHTLY_BUILD
  3. Make the allKeyed and allSettledKeyed properties on Promise ctor behind the pref in js::ShouldIgnorePropertyDefinition
  4. Run tests and see if there's any testcase that fails
  5. Modify the existing testcases to match the updated behavior
    • e.g. test_xrayToJS.xhtml tests the Xray feature to verify that correct set of the properties are visible via Xray. The newly added ctor methods should be visible there as well, but only if they're enabled (so, only if they exists on raw not-Xray-ed Promise ctor)
  6. Build the shell and the browser and run tests (the test_xrayToJS.xhtml above is mochitest chrome, which requires browser)
You need to log in before you can comment on or make changes to this bug.