Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Close sync iterator when async wrapper yields rejection #3633

Merged
merged 1 commit into from
Jan 30, 2024

Conversation

jedel1043
Copy link
Member

Implements the incoming changes of ecma262's PR #2600

@jedel1043 jedel1043 added enhancement New feature or request execution Issues or PRs related to code execution labels Jan 30, 2024
@jedel1043 jedel1043 added this to the v0.18.0 milestone Jan 30, 2024
@jedel1043 jedel1043 requested a review from a team January 30, 2024 16:55
Copy link

codecov bot commented Jan 30, 2024

Codecov Report

Attention: 37 lines in your changes are missing coverage. Please review.

Comparison is base (20dba13) 47.41% compared to head (27f7a51) 47.39%.

Files Patch % Lines
.../src/builtins/iterable/async_from_sync_iterator.rs 0.00% 37 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3633      +/-   ##
==========================================
- Coverage   47.41%   47.39%   -0.03%     
==========================================
  Files         476      476              
  Lines       46303    46327      +24     
==========================================
  Hits        21955    21955              
- Misses      24348    24372      +24     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link

Test262 conformance changes

Test result main count PR count difference
Total 96,310 96,310 0
Passed 79,712 79,740 +28
Ignored 4,217 4,217 0
Failed 12,381 12,353 -28
Panics 0 0 0
Conformance 82.77% 82.80% +0.03%
Fixed tests (28):
test/built-ins/AsyncFromSyncIteratorPrototype/throw/throw-undefined-poisoned-return.js [strict mode] (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/throw/throw-undefined-poisoned-return.js (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/throw/throw-null.js [strict mode] (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/throw/throw-null.js (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/throw/throw-undefined-return-object.js [strict mode] (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/throw/throw-undefined-return-object.js (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/throw/iterator-result-rejected-promise-close.js [strict mode] (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/throw/iterator-result-rejected-promise-close.js (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/throw/throw-undefined-return-not-object.js [strict mode] (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/throw/throw-undefined-return-not-object.js (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/throw/throw-result-poisoned-wrapper.js [strict mode] (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/throw/throw-result-poisoned-wrapper.js (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/throw/throw-undefined-get-return-undefined.js [strict mode] (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/throw/throw-undefined-get-return-undefined.js (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/throw/throw-undefined.js [strict mode] (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/throw/throw-undefined.js (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/next/for-await-iterator-next-rejected-promise-close.js [strict mode] (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/next/for-await-iterator-next-rejected-promise-close.js (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/next/for-await-next-rejected-promise-close.js [strict mode] (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/next/for-await-next-rejected-promise-close.js (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/next/next-result-poisoned-wrapper.js [strict mode] (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/next/next-result-poisoned-wrapper.js (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/next/yield-next-rejected-promise-close.js [strict mode] (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/next/yield-next-rejected-promise-close.js (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/next/yield-iterator-next-rejected-promise-close.js [strict mode] (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/next/yield-iterator-next-rejected-promise-close.js (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/next/iterator-result-poisoned-wrapper.js [strict mode] (previously Failed)
test/built-ins/AsyncFromSyncIteratorPrototype/next/iterator-result-poisoned-wrapper.js (previously Failed)

Copy link
Member

@raskad raskad left a comment

Choose a reason for hiding this comment

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

Nice fix

@raskad raskad requested a review from a team January 30, 2024 19:50
Copy link
Member

@nekevss nekevss left a comment

Choose a reason for hiding this comment

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

Looks good to me :)

@nekevss nekevss added this pull request to the merge queue Jan 30, 2024
Merged via the queue into main with commit 8010052 Jan 30, 2024
14 checks passed
@jedel1043 jedel1043 deleted the fix-normative-pr-2600 branch January 30, 2024 21:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request execution Issues or PRs related to code execution
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants