This repository has been archived by the owner on Nov 17, 2023. It is now read-only.
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.
Description
This PR restores the
NDArray::Save/Load
functions to 1.4.1 for keeping backward compatibility for saving/loading zero-size tensors. The issue was reported in #14954 (comment) by @DickJC123.This PR depends on #15063. I will rebase this PR after #15063 is merged.
@DickJC123 Since we are not going to have the NumPy shape semantics in the next release, I simply reverted the changes for serialization functions introduced by #14661. After careful thinking, I find that it's required to depend on the compatibility mode to save/load ndarrays in legacy/numpy shape semantics (we will also need a magic version number to guard this when loading). We will deal with it after introducing NumPy operators. Right now, I added
CHECK
in save/load functions indicating that numpy shape semantics cannot be turned on.Checklist
Essentials
Please feel free to remove inapplicable items for your PR.