[w3c/IndexedDB] Is it really true that StructuredDeserialize can't throw in this spec? (Issue #391)

https://w3c.github.io/IndexedDB/#database-operations has the (perhaps bold) claim that "Invocations of StructuredDeserialize() in the operation steps below can be asserted not to throw (as indicated by the ! prefix) because they operate only on previous output of StructuredSerializeForStorage()."

I'm not sure if that is a valid argument, and even if it is today it puts requirements on other specs that authors of those specs might not realize. A couple of things that would need to be valid for this to true:
- any interface that can be serialized for storage needs to be exposed in all global interfaces where indexed db itself is exposed
- the deserialization steps for any interface must never throw if the input to them was the result of serializing that interface for storage

If those are requirements this spec is actually relying on, that should probably at least be reflected as requirements for the serialization steps and deserialization steps in the HTML spec?

-- 
Reply to this email directly or view it on GitHub:
https://github.com/w3c/IndexedDB/issues/391
You are receiving this because you are subscribed to this thread.

Message ID: <w3c/IndexedDB/issues/391@github.com>

Received on Friday, 19 August 2022 23:51:02 UTC