ipld/edelweiss
add type ByteString for backwards compat with IPLD schema
Aberta
#16 aberto em 11 de mar. de 2022
good first issue
Métricas do repositório
- Stars
- (17 estrelas)
- Métricas de merge de PR
- (Métricas PR pendentes)
Description
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