Skip to content

Conversation

@nicolo-ribaudo
Copy link
Member

Tests for tc39/ecma262#3695

@nicolo-ribaudo nicolo-ribaudo requested a review from a team as a code owner October 1, 2025 16:53
Promise.all([pA_start.promise, pB_start.promise]).then(p1.reject);

importsP.then(() => {
assert.compareArray(logs, ["B", "A"]);
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Before the normative change, this would be A,B.

@nicolo-ribaudo nicolo-ribaudo added the has consensus This has committee consensus label Oct 1, 2025
@nicolo-ribaudo nicolo-ribaudo force-pushed the async-mod-eval-prom-settl-ord branch from 18d23ef to 644a304 Compare October 1, 2025 16:59
@nicolo-ribaudo
Copy link
Member Author

Mhhh there might be something wrong with the test, I was expecting V8 and SM to fail it.

@nicolo-ribaudo nicolo-ribaudo force-pushed the async-mod-eval-prom-settl-ord branch from 644a304 to 697229d Compare October 2, 2025 10:15
@nicolo-ribaudo
Copy link
Member Author

Results are (almost) as expected:

  • V8/SM fail only the rejection test
  • XS passes both
  • I was expecting JSC to fail only the fulfillment test, but it looks like it just gets stuck. I'm not super surprised given that JSC has some well known bugs with top-level await.

lando-prod-mozilla bot pushed a commit to mozilla-firefox/firefox that referenced this pull request Oct 3, 2025
…der r=jonco

This patch inverts the order in which we reject promises in
AsyncModuleExecutionRejected to match AsyncModuleExecutionFulfilled:
first the promise corresponding to the leaf module (the one that throws)
is rejected, and then its ancestors.

This change was discussed at the July 2025 TC39 meeting.

Spec PR: tc39/ecma262#3695
test262: tc39/test262#4591

Differential Revision: https://phabricator.services.mozilla.com/D267210
Copy link
Contributor

@Ms2ger Ms2ger left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

i3roly pushed a commit to i3roly/firefox-dynasty that referenced this pull request Oct 7, 2025
…der r=jonco

This patch inverts the order in which we reject promises in
AsyncModuleExecutionRejected to match AsyncModuleExecutionFulfilled:
first the promise corresponding to the leaf module (the one that throws)
is rejected, and then its ancestors.

This change was discussed at the July 2025 TC39 meeting.

Spec PR: tc39/ecma262#3695
test262: tc39/test262#4591

Differential Revision: https://phabricator.services.mozilla.com/D267210
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified-and-comments-removed that referenced this pull request Oct 8, 2025
…der r=jonco

This patch inverts the order in which we reject promises in
AsyncModuleExecutionRejected to match AsyncModuleExecutionFulfilled:
first the promise corresponding to the leaf module (the one that throws)
is rejected, and then its ancestors.

This change was discussed at the July 2025 TC39 meeting.

Spec PR: tc39/ecma262#3695
test262: tc39/test262#4591

Differential Revision: https://phabricator.services.mozilla.com/D267210

UltraBlame original commit: a3cf4d1eef17209c4c4194e07f38fe870c417781
gecko-dev-updater pushed a commit to marco-c/gecko-dev-comments-removed that referenced this pull request Oct 8, 2025
…der r=jonco

This patch inverts the order in which we reject promises in
AsyncModuleExecutionRejected to match AsyncModuleExecutionFulfilled:
first the promise corresponding to the leaf module (the one that throws)
is rejected, and then its ancestors.

This change was discussed at the July 2025 TC39 meeting.

Spec PR: tc39/ecma262#3695
test262: tc39/test262#4591

Differential Revision: https://phabricator.services.mozilla.com/D267210

UltraBlame original commit: a3cf4d1eef17209c4c4194e07f38fe870c417781
gecko-dev-updater pushed a commit to marco-c/gecko-dev-wordified that referenced this pull request Oct 8, 2025
…der r=jonco

This patch inverts the order in which we reject promises in
AsyncModuleExecutionRejected to match AsyncModuleExecutionFulfilled:
first the promise corresponding to the leaf module (the one that throws)
is rejected, and then its ancestors.

This change was discussed at the July 2025 TC39 meeting.

Spec PR: tc39/ecma262#3695
test262: tc39/test262#4591

Differential Revision: https://phabricator.services.mozilla.com/D267210

UltraBlame original commit: a3cf4d1eef17209c4c4194e07f38fe870c417781
@Ms2ger Ms2ger force-pushed the async-mod-eval-prom-settl-ord branch from 58e2e96 to 314fd06 Compare October 9, 2025 12:23
@Ms2ger Ms2ger enabled auto-merge (squash) October 9, 2025 12:23
@Ms2ger Ms2ger merged commit 761dc46 into tc39:main Oct 9, 2025
12 checks passed
@nicolo-ribaudo nicolo-ribaudo deleted the async-mod-eval-prom-settl-ord branch October 14, 2025 17:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

has consensus This has committee consensus

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants