ipld/edelweiss
add type ByteString for backwards compat with IPLD schema
Offen
#16 geöffnet am 11.03.2022
good first issue
Repository-Metriken
- Stars
- (17 Sterne)
- PR-Merge-Metriken
- (PR-Metriken ausstehend)
Beschreibung
Edelweiss type String definitionally holds valid Unicode strings only, and encodes/decodes them from IPLD strings with valid UTF8 encodings.
However, there may be pre-existing IPLD schemas that place non-UTF8 byte sequences in IPLD string objects. By design requirement, Edelweiss must provide a way for working with pre-existing schemas.
One way of doing this without violating Edelweiss's type semantics is to introduce a new Edelweiss type, say called ByteString, which:
- is a list of bytes on the user-facing end
- encodes/decodes as an IPLD string of arbitrary bytes on the wire