Order of operations, when to throw or silently do nothing?
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 20/100
- Issue type
- Feature
- Clarity
- Needs clarification
- Activity status
- Stale
- Tech stack
- javascript
- Domain
- backend-api-design
Research direction
Review the listed operations—sliceToImmutable, TypedArray write methods, SetViewValue, ArrayBufferCopyAndDetach, and Atomics—and compare their current validation order. The issue is complete only after the proposal resolves when immutable-buffer errors should occur relative to argument, bounds, detachment, and zero-length checks.
Written by the indexing model from the issue text.
Description
-
Should
sliceToImmutablewith reversed start and end throw an exception even thoughslicewith the same arguments would not? -
Should trying to write data in an immutable ArrayBuffer via a TypedArray element set throw, even though trying to write out-of-bounds or to a detached ArrayBuffer does not?
-
Should TypedArray write methods (copyWithin, fill, reverse, set, etc.) throw when their backing ArrayBuffer is immutable but the targeted range is zero-length? If so, how early or late in the algorithm? The methods currently inspect arguments after ValidateTypedArray.
Similarly,
-
How early or late in SetViewValue against an immutable ArrayBuffer should an exception be thrown? It currently inspects arguments before IsViewOutOfBounds.
-
Likewise for abstract operations such as ArrayBufferCopyAndDetach (which currently checks IsSharedArrayBuffer, then newLength, then IsDetachedBuffer).
-
And also for Atomics functions.
- Dominant language
- JavaScript
- Stars
- 38
- Forks
- 7
- PR merge metrics
- No merged PRs in 30d
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from tc39/proposal-immutable-arraybuffer
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
-
Difficulty 4/5 3-5 days Newbie friendliness 45/100
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
tc39/proposal-immutable-arraybuffer#43 · 2 comments ·
-
Review Open
Difficulty 5/5 Over a week Newbie friendliness 25/100
tc39/proposal-immutable-arraybuffer#30 · 12 comments ·
-
Difficulty 3/5 1-2 days Newbie friendliness 42/100
tc39/proposal-immutable-arraybuffer#18 · 1 comment ·
All issues in tc39/proposal-immutable-arraybuffer
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
HarperFast/skills#96 ·
-
[Block] Latest Posts [Type] Bug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Automattic/studio#4908 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
sugarlabs/musicblocks#8847 ·