go-ipld-prime icon indicating copy to clipboard operation
go-ipld-prime copied to clipboard

Golang interfaces for the IPLD Data Model, with core Codecs included, IPLD Schemas support, and some handy functional transforms tools.

Results 80 go-ipld-prime issues
Sort by recently updated
recently updated
newest added

It's not that the `traversal` package isn't fast. But it does do some things in the name of 'safety' that sort of prevent it from being *really* fast. Namely, it...

tl;dr: Bindnode should have some way to support unions that does not require the use of pointers. Currently this is not the case. This is important for map keys. ---...

exp/expert
P2
effort/days

Suppose you have a struct define as ``` ts.Accumulate(schema.SpawnStruct("Example", []schema.StructField{ schema.SpawnStructField("Optional", "String", true, false), }, schema.SpawnStructRepresentationMap(map[string]string{}))) ``` and you serialize it: ``` node := _Example { Optional: _String__Maybe{v:schema.Maybe_Abscent} } linkPrototype.Build(ctx,...

There's a lot of syntactic weight to using selectors if your starting point is a CID. Some of this is a natural consequence of the fact that Selectors work on...

As we move into doing reification and work more with schemas, we are starting to encounter lots of situations were we basically want to ask: are these schemas the same?...

Currently, selectors lookup and explore iteratively. Unfortunately, this means we often have to pause while going to disk. Instead, we should be reading from disk in parallel. The simplest approach...

Interfaces are always a `(type, pointer)` pair, so if one shoves a non-pointer value in them, that's always an alloc. This is the case with `cidlink.Link`, as it's a struct....

The DAG-JSON encoding cannot differentiate between {a map with a single entry that has a key of "`/`" and a string value} and {an IPLD link}. Therefore, in order to...

1. The internal context can be null (by design). This will cause crashes. 2. It contains dynamically scoped information about the link that may affect resolution (can it?). This will...

For example, the codec packages use 0xNN literals when registering themselves as encoders and decoders. We have https://pkg.go.dev/github.com/multiformats/go-multicodec now, so we might as well start using it. There's also the...