feat: raw data support (experimental) #141
Merged
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.
Resolves #21
Resolves #121
This PR supports the storing and retrieval of raw values using the new
getItemRaw
/setItemRaw
interface.Drivers can opt-in to implement
getItemRaw
/setItemRaw
as well. When they do, unstorage directly uses this interface instead of getItem/setItem.For drivers not supporting raw format, unstorage uses a compatibility layer to serialize and deserialize raw values with
base64:
protocol. Raw input can be any value supported by [Buffer.from
(https://nodejs.org/api/buffer.html). This support is now added forfs
(node) andmemory
(universal)Followup #142