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

src: split BlobSerializer/BlobDeserializer #47458

Closed
wants to merge 3 commits into from

Conversation

joyeecheung
Copy link
Member

This patch splits BlobSerializer and BlobDeserializer out of SnapshotSerializer and SnapshotDeserializer. The child classes can implement serialization methods for custom types on top of BlobSerializer/BlobDeserializer for conversions between native types and binary blobs. This allows us to reuse the classes for other cases (e.g. SEA blobs).

This patch splits BlobSerializer and BlobDeserializer out of
SnapshotSerializer and SnapshotDeserializer. The child classes
can implement serialization methods for custom types on top
of BlobSerializer/BlobDeserializer for conversions between
native types and binary blobs. This allows us to reuse the
classes for other cases (e.g. SEA blobs).
@nodejs-github-bot
Copy link
Collaborator

Review requested:

  • @nodejs/startup

@nodejs-github-bot nodejs-github-bot added c++ Issues and PRs that require attention from people who are familiar with C++. needs-ci PRs that need a full CI run. labels Apr 7, 2023
src/node_snapshotable.cc Outdated Show resolved Hide resolved
src/node_snapshotable.cc Outdated Show resolved Hide resolved
src/node_snapshotable.cc Outdated Show resolved Hide resolved
Co-authored-by: Mohammed Keyvanzadeh <mohammadkeyvanzade94@gmail.com>
Copy link
Contributor

@RaisinTen RaisinTen left a comment

Choose a reason for hiding this comment

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

LGTM % lint-fix and the typo

src/node_snapshotable.cc Outdated Show resolved Hide resolved
@nodejs-github-bot
Copy link
Collaborator

joyeecheung added a commit that referenced this pull request Apr 25, 2023
This patch splits BlobSerializer and BlobDeserializer out of
SnapshotSerializer and SnapshotDeserializer. The child classes
can implement serialization methods for custom types on top
of BlobSerializer/BlobDeserializer for conversions between
native types and binary blobs. This allows us to reuse the
classes for other cases (e.g. SEA blobs).

PR-URL: #47458
Reviewed-By: Darshan Sen <raisinten@gmail.com>
@joyeecheung
Copy link
Member Author

Landed in 2e44a14

yjl9903 pushed a commit to yjl9903/node that referenced this pull request Apr 28, 2023
This patch splits BlobSerializer and BlobDeserializer out of
SnapshotSerializer and SnapshotDeserializer. The child classes
can implement serialization methods for custom types on top
of BlobSerializer/BlobDeserializer for conversions between
native types and binary blobs. This allows us to reuse the
classes for other cases (e.g. SEA blobs).

PR-URL: nodejs#47458
Reviewed-By: Darshan Sen <raisinten@gmail.com>
yjl9903 pushed a commit to yjl9903/node that referenced this pull request Apr 28, 2023
This patch splits BlobSerializer and BlobDeserializer out of
SnapshotSerializer and SnapshotDeserializer. The child classes
can implement serialization methods for custom types on top
of BlobSerializer/BlobDeserializer for conversions between
native types and binary blobs. This allows us to reuse the
classes for other cases (e.g. SEA blobs).

PR-URL: nodejs#47458
Reviewed-By: Darshan Sen <raisinten@gmail.com>
yjl9903 pushed a commit to yjl9903/node that referenced this pull request Apr 29, 2023
This patch splits BlobSerializer and BlobDeserializer out of
SnapshotSerializer and SnapshotDeserializer. The child classes
can implement serialization methods for custom types on top
of BlobSerializer/BlobDeserializer for conversions between
native types and binary blobs. This allows us to reuse the
classes for other cases (e.g. SEA blobs).

PR-URL: nodejs#47458
Reviewed-By: Darshan Sen <raisinten@gmail.com>
targos pushed a commit that referenced this pull request May 2, 2023
This patch splits BlobSerializer and BlobDeserializer out of
SnapshotSerializer and SnapshotDeserializer. The child classes
can implement serialization methods for custom types on top
of BlobSerializer/BlobDeserializer for conversions between
native types and binary blobs. This allows us to reuse the
classes for other cases (e.g. SEA blobs).

PR-URL: #47458
Reviewed-By: Darshan Sen <raisinten@gmail.com>
@targos targos mentioned this pull request May 2, 2023
RaisinTen added a commit to RaisinTen/node that referenced this pull request May 9, 2023
This should make it possible to reuse the BlobSerializer and the
BlobDeserializer classes in SEAs to generate and parse the injected
blob.

This change also resolves this TODO:
https://github.com/joyeecheung/node/blob/3294e8eb594d60a7e34eb8e0d05b5373a09f5cf3/src/node_snapshotable.cc#L189

Refs: nodejs#47458
Signed-off-by: Darshan Sen <raisinten@gmail.com>
RaisinTen added a commit to RaisinTen/node that referenced this pull request May 9, 2023
This should make it possible to reuse the BlobSerializer and the
BlobDeserializer classes in SEAs to generate and parse the injected
blob.

This change also resolves this TODO:
https://github.com/nodejs/node/blob/4f69aae6a04a460f267005dcf6551959064b3238/src/node_snapshotable.cc#L187

Refs: nodejs#47458
Signed-off-by: Darshan Sen <raisinten@gmail.com>
RaisinTen added a commit that referenced this pull request May 11, 2023
This should make it possible to reuse the BlobSerializer and the
BlobDeserializer classes in SEAs to generate and parse the injected
blob.

This change also resolves this TODO:
https://github.com/nodejs/node/blob/4f69aae6a04a460f267005dcf6551959064b3238/src/node_snapshotable.cc#L187

Refs: #47458
Signed-off-by: Darshan Sen <raisinten@gmail.com>
PR-URL: #47933
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
targos pushed a commit that referenced this pull request May 12, 2023
This should make it possible to reuse the BlobSerializer and the
BlobDeserializer classes in SEAs to generate and parse the injected
blob.

This change also resolves this TODO:
https://github.com/nodejs/node/blob/4f69aae6a04a460f267005dcf6551959064b3238/src/node_snapshotable.cc#L187

Refs: #47458
Signed-off-by: Darshan Sen <raisinten@gmail.com>
PR-URL: #47933
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
@danielleadams danielleadams added the backport-requested-v18.x PRs awaiting manual backport to the v18.x-staging branch. label Jun 27, 2023
danielleadams pushed a commit that referenced this pull request Jul 6, 2023
This should make it possible to reuse the BlobSerializer and the
BlobDeserializer classes in SEAs to generate and parse the injected
blob.

This change also resolves this TODO:
https://github.com/nodejs/node/blob/4f69aae6a04a460f267005dcf6551959064b3238/src/node_snapshotable.cc#L187

Refs: #47458
Signed-off-by: Darshan Sen <raisinten@gmail.com>
PR-URL: #47933
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
MoLow pushed a commit to MoLow/node that referenced this pull request Jul 6, 2023
This should make it possible to reuse the BlobSerializer and the
BlobDeserializer classes in SEAs to generate and parse the injected
blob.

This change also resolves this TODO:
https://github.com/nodejs/node/blob/4f69aae6a04a460f267005dcf6551959064b3238/src/node_snapshotable.cc#L187

Refs: nodejs#47458
Signed-off-by: Darshan Sen <raisinten@gmail.com>
PR-URL: nodejs#47933
Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport-requested-v18.x PRs awaiting manual backport to the v18.x-staging branch. c++ Issues and PRs that require attention from people who are familiar with C++. needs-ci PRs that need a full CI run.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants