Add transport types to use when transferring results ww -> main thread #708
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
To never run into any shape matching problem again, the right solution for this problem is to create transport types and attach them to the Bolt types response items in ww.
They are decoded and transformed back into real Bolt types on the main thread after transport.
NOTE: The
applyGraphTypes.test.js
file diff is collapsed in the "File Changed" view in this PR, but that's where all the relevant integration tests are.The property name which holds the type name was decided to be
transport-class
.If user data already has this property name, it's being escaped so we should never have a problem with collisions.
Showing no collision
Showing transported data vs. parsed data (types are not shown here, but they are correct). Note the escaped
transport-class
from the resultchangelog: Fix issue of some queries getting stuck because of the shape of the result